| Top |
| LatexilaBuildMsg * | latexila_build_msg_new () |
| void | latexila_build_msg_free () |
| void | latexila_build_msg_reinit () |
| void | latexila_build_msg_print () |
| LatexilaBuildView * | latexila_build_view_new () |
| void | latexila_build_view_clear () |
| GtkTreeIter | latexila_build_view_add_main_title () |
| GtkTreeIter | latexila_build_view_add_job_title () |
| void | latexila_build_view_set_title_state () |
| GtkTreeIter | latexila_build_view_append_single_message () |
| void | latexila_build_view_append_messages () |
| void | latexila_build_view_remove_children () |
| gboolean | has-details | Read / Write / Construct |
| gboolean | show-badboxes | Read / Write / Construct |
| gboolean | show-details | Read / Write / Construct |
| gboolean | show-warnings | Read / Write / Construct |
| LatexilaBuildView | |
| struct | LatexilaBuildMsg |
| enum | LatexilaBuildMsgType |
| enum | LatexilaBuildState |
GObject
╰── GInitiallyUnowned
╰── GtkWidget
╰── GtkContainer
╰── GtkTreeView
╰── LatexilaBuildView
LatexilaBuildView implements AtkImplementorIface, GtkBuildable and GtkScrollable.
A LatexilaBuildView is a GtkTreeView containing the build messages. The build view is contained in the bottom panel.
LatexilaBuildMsg *
latexila_build_msg_new (void);
Free the return value with latexila_build_msg_free() when no longer needed.
[skip]
void
latexila_build_msg_free (LatexilaBuildMsg *build_msg);
Frees the build_msg
structure.
[skip]
void
latexila_build_msg_reinit (LatexilaBuildMsg *build_msg);
Reinitializes a LatexilaBuildMsg.
void
latexila_build_msg_print (LatexilaBuildMsg *build_msg);
Prints build_msg
on stdout, for debugging purposes.
void
latexila_build_view_clear (LatexilaBuildView *build_view);
Clears the build view.
GtkTreeIter latexila_build_view_add_main_title (LatexilaBuildView *build_view,const gchar *main_title,LatexilaBuildState state);
Adds a build tool title. There should be only one main title.
GtkTreeIter latexila_build_view_add_job_title (LatexilaBuildView *build_view,const gchar *job_title,LatexilaBuildState state);
Adds a build job title.
void latexila_build_view_set_title_state (LatexilaBuildView *build_view,GtkTreeIter *title_id,LatexilaBuildState state);
Changes the build state of a title, represented as an icon.
If title_id
is the main title, state
is for the whole build tool. If
title_id
is for a job title, state
is for the build job.
GtkTreeIter latexila_build_view_append_single_message (LatexilaBuildView *build_view,GtkTreeIter *parent,LatexilaBuildMsg *message);
Appends a single message to the build view.
void latexila_build_view_append_messages (LatexilaBuildView *build_view,GtkTreeIter *parent,const GList *messages,gboolean expand);
Appends a tree of messages to the build view.
build_view |
||
parent |
the parent row in the tree. |
|
messages |
the tree of LatexilaBuildMsg's to append. |
[element-type LatexilaBuildMsg] |
expand |
whether to expand the |
void latexila_build_view_remove_children (LatexilaBuildView *build_view,GtkTreeIter *parent);
Removes the children of parent
.
struct LatexilaBuildMsg {
LatexilaBuildMsgType type;
gchar *text;
gchar *filename;
gint start_line;
gint end_line;
/* There are several reasons to use a GQueue:
* 1. A GQueue is convenient for appending at the end of the list.
* 2. An external GNode containing the build messages is not convenient for
* running sub-post-processors, for example the latex post-processor inside
* latexmk. A GNode has a reference to its parent, so it's more difficult to
* embed the messages of a sub-post-processor. Moreover, we don't need to know
* the parent, a GNode uses useless memory. A GSList would use even less
* memory, but it's less convenient to use.
*/
GQueue *children;
guint expand : 1;
};
A build message, one line in the GtkTreeView. If a filename
is provided,
the file will be opened when the user clicks on the message. If start_line
and end_line
are provided, the lines between the two positions will be
selected.
LatexilaBuildMsgType |
the message type. |
|
the text. |
||
reference to a certain file. |
||
reference to a line in the file. -1 to unset. |
||
reference to a line in the file. -1 to unset. |
||
list of children of type LatexilaBuildMsg. |
||
if the message has children, whether to initially show them. |
“has-details” property “has-details” gboolean
Flags: Read / Write / Construct
Default value: FALSE
“show-badboxes” property “show-badboxes” gboolean
Flags: Read / Write / Construct
Default value: TRUE
“show-details” property “show-details” gboolean
Flags: Read / Write / Construct
Default value: FALSE
“jump-to-file” signalvoid user_function (LatexilaBuildView *build_view, GFile *file, gint start_line, gint end_line, gpointer user_data)
The ::jump-to-file signal is emitted when a row in the build view is
selected. The row must contain a file, otherwise the signal is not emitted.
The file should be opened and presented to the user. If start_line
and
end_line
are not -1, jump to the start_line
and select those lines. If
start_line
is provided, end_line
is also provided (different than -1).
build_view |
||
file |
the file to open. |
|
start_line |
the line where to jump and the start of the selection, or -1. |
|
end_line |
the end of the selection, or -1. |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last