/* latexila.vapi generated by vapigen-0.40, do not modify. */

[CCode (cprefix = "Latexila", gir_namespace = "Latexila", gir_version = "Latexila", lower_case_cprefix = "latexila_")]
namespace Latexila {
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_build_job_get_type ()")]
	public class BuildJob : GLib.Object {
		[CCode (has_construct_function = false)]
		public BuildJob ();
		public Latexila.BuildJob clone ();
		public async bool run_async (GLib.File file, Latexila.BuildView build_view, GLib.Cancellable? cancellable);
		public string to_xml ();
		[NoAccessorMethod]
		public string command { owned get; set construct; }
		[NoAccessorMethod]
		public Latexila.PostProcessorType post_processor_type { get; set construct; }
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_build_tool_get_type ()")]
	public class BuildTool : GLib.Object {
		[CCode (has_construct_function = false)]
		public BuildTool ();
		public void add_job (Latexila.BuildJob build_job);
		public Latexila.BuildTool clone ();
		public unowned string get_description ();
		public unowned GLib.List<Latexila.BuildJob> get_jobs ();
		public async void run_async (GLib.File file, Latexila.BuildView build_view, GLib.Cancellable? cancellable);
		public string to_xml ();
		[NoAccessorMethod]
		public string description { owned get; set construct; }
		[NoAccessorMethod]
		public bool enabled { get; set construct; }
		[NoAccessorMethod]
		public string extensions { owned get; set construct; }
		[NoAccessorMethod]
		public string files_to_open { owned get; set construct; }
		[NoAccessorMethod]
		public string icon { owned get; set construct; }
		[NoAccessorMethod]
		public int id { get; set construct; }
		[NoAccessorMethod]
		public string label { owned get; set construct; }
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_build_tools_get_type ()")]
	public class BuildTools : GLib.Object {
		public weak GLib.List<Latexila.BuildTool> build_tools;
		[CCode (has_construct_function = false)]
		protected BuildTools ();
		[NoWrapper]
		public virtual void handle_not_found_error (GLib.File xml_file, GLib.Error error);
		public void load (GLib.File xml_file);
		public unowned Latexila.BuildTool nth (uint tool_num);
		public void set_enabled (uint tool_num, bool enabled);
		public signal void loaded ();
		public signal void modified ();
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_build_tools_default_get_type ()")]
	public class BuildToolsDefault : Latexila.BuildTools {
		[CCode (has_construct_function = false)]
		protected BuildToolsDefault ();
		public static unowned Latexila.BuildToolsDefault get_instance ();
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_build_tools_personal_get_type ()")]
	public class BuildToolsPersonal : Latexila.BuildTools {
		[CCode (has_construct_function = false)]
		protected BuildToolsPersonal ();
		public void add (Latexila.BuildTool new_build_tool);
		public void @delete (uint tool_num);
		public static unowned Latexila.BuildToolsPersonal get_instance ();
		public void insert (Latexila.BuildTool new_build_tool, uint position);
		public void move_down (uint tool_num);
		public void move_up (uint tool_num);
		public void replace (Latexila.BuildTool new_build_tool, uint position);
		public void save ();
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_build_view_get_type ()")]
	public class BuildView : Gtk.TreeView, Atk.Implementor, Gtk.Buildable, Gtk.Scrollable {
		[CCode (has_construct_function = false)]
		public BuildView ();
		public Gtk.TreeIter? add_job_title (string job_title, Latexila.BuildState state);
		public Gtk.TreeIter? add_main_title (string main_title, Latexila.BuildState state);
		public void append_messages (Gtk.TreeIter parent, GLib.List<Latexila.BuildMsg> messages, bool expand);
		public Gtk.TreeIter? append_single_message (Gtk.TreeIter parent, Latexila.BuildMsg message);
		public void clear ();
		public void remove_children (Gtk.TreeIter parent);
		public void set_title_state (Gtk.TreeIter title_id, Latexila.BuildState state);
		[NoAccessorMethod]
		public bool has_details { get; set construct; }
		[NoAccessorMethod]
		public bool show_badboxes { get; set construct; }
		[NoAccessorMethod]
		public bool show_details { get; set construct; }
		[NoAccessorMethod]
		public bool show_warnings { get; set construct; }
		public signal void jump_to_file (GLib.File file, int start_line, int end_line);
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_post_processor_get_type ()")]
	public class PostProcessor : GLib.Object {
		[CCode (has_construct_function = false)]
		protected PostProcessor ();
		public virtual void end (bool succeeded);
		public virtual unowned GLib.List<Latexila.BuildMsg> get_messages (bool show_details);
		public static unowned string get_name_from_type (Latexila.PostProcessorType type);
		public static bool get_type_from_name (string name, out Latexila.PostProcessorType type);
		public async void process_async (GLib.File file, GLib.InputStream stream, GLib.Cancellable? cancellable);
		public virtual void process_line (owned string line);
		public virtual void start (GLib.File file);
		[NoAccessorMethod]
		public bool has_details { get; set construct; }
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_post_processor_all_output_get_type ()")]
	public class PostProcessorAllOutput : Latexila.PostProcessor {
		[CCode (has_construct_function = false, type = "LatexilaPostProcessor*")]
		public PostProcessorAllOutput ();
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_post_processor_latex_get_type ()")]
	public class PostProcessorLatex : Latexila.PostProcessor {
		[CCode (has_construct_function = false, type = "LatexilaPostProcessor*")]
		public PostProcessorLatex ();
		public int get_errors_count ();
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_post_processor_latexmk_get_type ()")]
	public class PostProcessorLatexmk : Latexila.PostProcessor {
		[CCode (has_construct_function = false, type = "LatexilaPostProcessor*")]
		public PostProcessorLatexmk ();
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_synctex_get_type ()")]
	public class Synctex : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Synctex ();
		public void connect_evince_window (string pdf_uri);
		public void forward_search (Gtk.TextBuffer buffer, GLib.File buffer_location, GLib.File main_tex_file, uint timestamp);
		public static unowned Latexila.Synctex get_instance ();
		public signal void backward_search (string tex_uri, int line, uint timestamp);
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_templates_default_get_type ()")]
	public class TemplatesDefault : Gtk.ListStore, Gtk.Buildable, Gtk.TreeDragDest, Gtk.TreeDragSource, Gtk.TreeModel, Gtk.TreeSortable {
		[CCode (has_construct_function = false)]
		protected TemplatesDefault ();
		public string get_contents (Gtk.TreePath path);
		public static unowned Latexila.TemplatesDefault get_instance ();
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_templates_manage_dialog_get_type ()")]
	public class TemplatesManageDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
		[CCode (has_construct_function = false, type = "GtkDialog*")]
		public TemplatesManageDialog (Gtk.Window parent_window);
	}
	[CCode (cheader_filename = "latexila.h", type_id = "latexila_templates_personal_get_type ()")]
	public class TemplatesPersonal : Gtk.ListStore, Gtk.Buildable, Gtk.TreeDragDest, Gtk.TreeDragSource, Gtk.TreeModel, Gtk.TreeSortable {
		[CCode (has_construct_function = false)]
		protected TemplatesPersonal ();
		public bool create (string name, string config_icon_name, string contents) throws GLib.Error;
		public bool @delete (Gtk.TreeIter iter) throws GLib.Error;
		public string get_contents (Gtk.TreePath path);
		public static unowned Latexila.TemplatesPersonal get_instance ();
		public bool move_down (Gtk.TreeIter iter) throws GLib.Error;
		public bool move_up (Gtk.TreeIter iter) throws GLib.Error;
	}
	[CCode (cheader_filename = "latexila.h", has_type_id = false)]
	public struct BuildMsg {
		public Latexila.BuildMsgType type;
		public weak string text;
		public weak string filename;
		public int start_line;
		public int end_line;
		public weak GLib.Queue children;
		public uint expand;
		public void print ();
		public void reinit ();
	}
	[CCode (cheader_filename = "latexila.h", cprefix = "LATEXILA_BUILD_MSG_TYPE_", type_id = "latexila_build_msg_type_get_type ()")]
	public enum BuildMsgType {
		MAIN_TITLE,
		JOB_TITLE,
		JOB_SUB_COMMAND,
		ERROR,
		WARNING,
		BADBOX,
		INFO
	}
	[CCode (cheader_filename = "latexila.h", cprefix = "LATEXILA_BUILD_STATE_", type_id = "latexila_build_state_get_type ()")]
	public enum BuildState {
		RUNNING,
		SUCCEEDED,
		FAILED,
		ABORTED
	}
	[CCode (cheader_filename = "latexila.h", cprefix = "LATEXILA_POST_PROCESSOR_TYPE_", type_id = "latexila_post_processor_type_get_type ()")]
	public enum PostProcessorType {
		NO_OUTPUT,
		ALL_OUTPUT,
		LATEX,
		LATEXMK,
		NB_TYPES
	}
	[CCode (cheader_filename = "latexila.h")]
	public static void latex_commands_add_action_infos (Gtk.Application gtk_app);
	[CCode (cheader_filename = "latexila.h")]
	public static void latex_commands_add_actions (Gtk.ApplicationWindow gtk_window);
	[CCode (cheader_filename = "latexila.h")]
	public static void templates_dialogs_create_template (Gtk.Window parent_window, string template_contents);
	[CCode (cheader_filename = "latexila.h")]
	public static string templates_dialogs_open (Gtk.Window parent_window);
	[CCode (cheader_filename = "latexila.h")]
	public static bool utils_create_parent_directories (GLib.File file) throws GLib.Error;
	[CCode (cheader_filename = "latexila.h")]
	public static async bool utils_file_query_exists_async (GLib.File file, GLib.Cancellable? cancellable);
	[CCode (cheader_filename = "latexila.h")]
	public static unowned Gtk.Widget utils_get_dialog_component (string title, Gtk.Widget widget);
	[CCode (cheader_filename = "latexila.h")]
	public static string utils_get_extension (string filename);
	[CCode (cheader_filename = "latexila.h")]
	public static Gdk.Pixbuf? utils_get_pixbuf_from_icon_name (string icon_name, Gtk.IconSize icon_size);
	[CCode (cheader_filename = "latexila.h")]
	public static string utils_get_shortname (string filename);
	[CCode (cheader_filename = "latexila.h")]
	public static unowned Gtk.Widget utils_join_widgets (Gtk.Widget widget_top, Gtk.Widget widget_bottom);
	[CCode (cheader_filename = "latexila.h")]
	public static void utils_migrate_latexila_to_gnome_latex ();
	[CCode (cheader_filename = "latexila.h")]
	public static void utils_register_icons ();
	[CCode (cheader_filename = "latexila.h")]
	public static string utils_replace_home_dir_with_tilde (string filename);
	[CCode (cheader_filename = "latexila.h")]
	public static void utils_show_uri (Gtk.Widget? widget, string uri, uint32 timestamp) throws GLib.Error;
	[CCode (cheader_filename = "latexila.h")]
	public static string utils_str_replace (string string, string search, string replacement);
	[CCode (cheader_filename = "latexila.h")]
	public static void view_configure_space_drawer (Gtk.SourceView view);
	[CCode (cheader_filename = "latexila.h")]
	public static string view_get_indentation_style (Gtk.SourceView view);
}
