Commit b64b58d9 authored by Naba Kumar's avatar Naba Kumar

Updated, added missing files.

	* po/POTFILES.in: Updated, added missing files.

	* .cvsignore: Updated.

	* libanjuta/anjuta-utils.[h,c]: Functions take constant parameters. Added
	a new function to get User input text.

	* libanjuta/resources.[c,h]: Added a function to created sized image.

	* libanjuta/interfaces/libanjuta.idl: Changed parameter name to uri
	from filename, as thats the correct representation.

	* plugins/build-basic-autotools/Makefile.am,
	(added) plugins/build-basic-autotools/automake-c.filters,
	plugins/build-basic-autotools/anjuta-build-basic-autotools-plugin.ui,
	plugins/build-basic-autotools/build-basic-autotools.[c,h]:
	Rearragned UI elements in the build menu. Added codes to read build
	filter rules from external file. Implemented all build, configure,
	autogen commands. Watches current editor and project.

	* plugins/editor/anjuta-docman.[c,h], plugins/editor/plugin.c:
	Added editor changed signal and exports current editor value.
	Fixed parameter names. Fixed get_uri() interface implementation to
	return correct uri.

	* plugins/editor/anjuta-document-manager.ui: Removed unnecessary UI
	elements.

	* plugins/file-loader/anjuta-loader-plugin.ui: Added New UI element.

	* plugins/file-manager/an_file_view.c,
	plugins/file-manager/an_file_view.c: Exports file uri correctly.

	* plugins/file-wizard/file.c: Reads uri correctly.

	* plugins/message-view/anjuta-msgman.c: Sizes tab images properly and
	sets the page to the new view.

	* plugins/message-view/message-view.c: Unrefs the tree model when done.
	Fixed signal connecting.

	* plugins/project-manager/plugin.c: Changed "project_root_directory"
	to "project_root_uri" and exports as uri.
parent 8e2d31db
.tm_project.cache
aclocal.m4
anjuta.desktop
anjuta.desktop.in
anjuta.pws
anjuta.spec
autom4te.cache
config.h
config.h.in
config.log
config.status
configure
intltool-extract
intltool-merge
intltool-modules
intltool-update
libtool
prepare.sh
stamp-h
stamp-h.in
Makefile
Makefile.in
2004-09-26 Naba Kumar <naba@gnome.org>
* po/POTFILES.in: Updated, added missing files.
* .cvsignore: Updated.
* libanjuta/anjuta-utils.[h,c]: Functions take constant parameters. Added
a new function to get User input text.
* libanjuta/resources.[c,h]: Added a function to created sized image.
* libanjuta/interfaces/libanjuta.idl: Changed parameter name to uri
from filename, as thats the correct representation.
* plugins/build-basic-autotools/Makefile.am,
(added) plugins/build-basic-autotools/automake-c.filters,
plugins/build-basic-autotools/anjuta-build-basic-autotools-plugin.ui,
plugins/build-basic-autotools/build-basic-autotools.[c,h]:
Rearragned UI elements in the build menu. Added codes to read build
filter rules from external file. Implemented all build, configure,
autogen commands. Watches current editor and project.
* plugins/editor/anjuta-docman.[c,h], plugins/editor/plugin.c:
Added editor changed signal and exports current editor value.
Fixed parameter names. Fixed get_uri() interface implementation to
return correct uri.
* plugins/editor/anjuta-document-manager.ui: Removed unnecessary UI
elements.
* plugins/file-loader/anjuta-loader-plugin.ui: Added New UI element.
* plugins/file-manager/an_file_view.c,
plugins/file-manager/an_file_view.c: Exports file uri correctly.
* plugins/file-wizard/file.c: Reads uri correctly.
* plugins/message-view/anjuta-msgman.c: Sizes tab images properly and
sets the page to the new view.
* plugins/message-view/message-view.c: Unrefs the tree model when done.
Fixed signal connecting.
* plugins/project-manager/plugin.c: Changed "project_root_directory"
to "project_root_uri" and exports as uri.
2004-09-24 Naba Kumar <naba@gnome.org>
* libanjuta/anjuta-ui.c: Fixed a crash bug.
......
......@@ -209,7 +209,7 @@ anjuta_util_dialog_add_button (GtkDialog *dialog, const gchar* text,
}
void
anjuta_util_dialog_error (GtkWindow *parent, gchar * mesg, ...)
anjuta_util_dialog_error (GtkWindow *parent, const gchar *mesg, ...)
{
gchar* message;
va_list args;
......@@ -231,7 +231,7 @@ anjuta_util_dialog_error (GtkWindow *parent, gchar * mesg, ...)
}
void
anjuta_util_dialog_warning (GtkWindow *parent, gchar * mesg, ...)
anjuta_util_dialog_warning (GtkWindow *parent, const gchar * mesg, ...)
{
gchar* message;
va_list args;
......@@ -253,7 +253,7 @@ anjuta_util_dialog_warning (GtkWindow *parent, gchar * mesg, ...)
}
void
anjuta_util_dialog_info (GtkWindow *parent, gchar * mesg, ...)
anjuta_util_dialog_info (GtkWindow *parent, const gchar * mesg, ...)
{
gchar* message;
va_list args;
......@@ -275,7 +275,8 @@ anjuta_util_dialog_info (GtkWindow *parent, gchar * mesg, ...)
}
void
anjuta_util_dialog_error_system (GtkWindow* parent, gint errnum, gchar * mesg, ... )
anjuta_util_dialog_error_system (GtkWindow* parent, gint errnum,
const gchar * mesg, ... )
{
gchar* message;
gchar* tot_mesg;
......@@ -287,7 +288,8 @@ anjuta_util_dialog_error_system (GtkWindow* parent, gint errnum, gchar * mesg, .
va_end (args);
if (0 != errnum) {
tot_mesg = g_strconcat (message, _("\nSystem: "), g_strerror(errnum), NULL);
tot_mesg = g_strconcat (message, _("\nSystem: "),
g_strerror(errnum), NULL);
g_free (message);
} else
tot_mesg = message;
......@@ -304,7 +306,7 @@ anjuta_util_dialog_error_system (GtkWindow* parent, gint errnum, gchar * mesg, .
}
gboolean
anjuta_util_dialog_boolean_question (GtkWindow *parent, gchar * mesg, ...)
anjuta_util_dialog_boolean_question (GtkWindow *parent, const gchar *mesg, ...)
{
gchar* message;
va_list args;
......@@ -326,6 +328,55 @@ anjuta_util_dialog_boolean_question (GtkWindow *parent, gchar * mesg, ...)
return (ret == GTK_RESPONSE_YES);
}
gboolean
anjuta_util_dialog_input (GtkWindow *parent, const gchar *prompt,
gchar **return_value)
{
GtkWidget *dialog, *label, *frame, *entry, *dialog_vbox;
gint res;
gchar *markup;
dialog = gtk_dialog_new_with_buttons (prompt, parent,
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
GTK_STOCK_OK, GTK_RESPONSE_OK,
NULL);
dialog_vbox = GTK_DIALOG (dialog)->vbox;
gtk_window_set_default_size (GTK_WINDOW (dialog), 400, -1);
gtk_widget_show (dialog_vbox);
markup = g_strconcat ("<b>", prompt, "</b>", NULL);
label = gtk_label_new (NULL);
gtk_label_set_markup (GTK_LABEL (label), markup);
gtk_widget_show (label);
g_free (markup);
frame = gtk_frame_new (NULL);
gtk_frame_set_label_widget (GTK_FRAME (frame), label);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_NONE);
gtk_container_set_border_width (GTK_CONTAINER (frame), 10);
gtk_widget_show (frame);
gtk_box_pack_start (GTK_BOX (dialog_vbox), frame, FALSE, FALSE, 0);
entry = gtk_entry_new ();
gtk_widget_show (entry);
gtk_container_add (GTK_CONTAINER (frame), entry);
res = gtk_dialog_run (GTK_DIALOG (dialog));
if (gtk_entry_get_text (GTK_ENTRY (entry)) &&
strlen (gtk_entry_get_text (GTK_ENTRY (entry))) > 0)
{
*return_value = g_strdup (gtk_entry_get_text (GTK_ENTRY (entry)));
}
else
{
*return_value = NULL;
}
gtk_widget_destroy (dialog);
return (res == GTK_RESPONSE_OK);
}
gboolean
anjuta_util_prog_is_installed (gchar * prog, gboolean show)
{
......
......@@ -38,13 +38,15 @@ GtkWidget* anjuta_util_dialog_add_button (GtkDialog *dialog, const gchar* text,
const gchar* stock_id,
gint response_id);
void anjuta_util_dialog_error (GtkWindow *parent, gchar * mesg, ...);
void anjuta_util_dialog_warning (GtkWindow *parent, gchar * mesg, ...);
void anjuta_util_dialog_info (GtkWindow *parent, gchar * mesg, ...);
void anjuta_util_dialog_error (GtkWindow *parent, const gchar * mesg, ...);
void anjuta_util_dialog_warning (GtkWindow *parent, const gchar * mesg, ...);
void anjuta_util_dialog_info (GtkWindow *parent, const gchar * mesg, ...);
void anjuta_util_dialog_error_system (GtkWindow* parent, gint errnum,
gchar * mesg, ... );
const gchar * mesg, ... );
gboolean anjuta_util_dialog_boolean_question (GtkWindow *parent,
gchar * mesg, ...);
const gchar * mesg, ...);
gboolean anjuta_util_dialog_input (GtkWindow *parent,
const gchar *label, gchar **value);
gboolean anjuta_util_prog_is_installed (gchar * prog, gboolean show);
......
......@@ -23,8 +23,8 @@
// Implemented by all plugins that can open files
interface IAnjutaFile
{
void open (const gchar *filename);
gchar* get_filename ();
void open (const gchar *uri);
gchar* get_uri ();
// Implemented by plugins which can also edit the files
interface IAnjutaFileSavable
......@@ -33,7 +33,7 @@ interface IAnjutaFile
void ::save_point (gboolean entered);
void save ();
void save_as (const gchar *filename);
void save_as (const gchar *uri);
void set_dirty (gboolean dirty);
gboolean is_dirty ();
......@@ -287,7 +287,7 @@ interface IAnjutaLoader
/**
* ianjuta_file_loader_load:
* @obj: Self
* @filename: File to load
* @uri: URI to load
* @readonly: Open in readonly mode.
* @err: Error propagation and reporting
*
......@@ -296,12 +296,12 @@ interface IAnjutaLoader
*
* Return value: Plugin interface used to load the file.
*/
GObject* load (const gchar *filename, gboolean readonly);
GObject* load (const gchar *uri, gboolean readonly);
/**
* ianjuta_loader_peek_interface:
* @obj: Self
* @filename: Meta file to peek
* @uri: Meta file to peek
* @err: Error propagation and reporting
*
* Peeks the file and determines the interface which can load
......@@ -309,7 +309,7 @@ interface IAnjutaLoader
*
* Return value: Plugin interface name that can load the file.
*/
gchar* peek_interface (const gchar *filename);
gchar* peek_interface (const gchar *uri);
}
// StreamLoaders can deterime correct plugin to open a stream.
......@@ -423,11 +423,11 @@ interface IAnjutaMessageManager
interface IAnjutaFileManager
{
void ::section_changed (const gchar *filename);
void ::section_changed (const gchar *uri);
void set_root (const gchar *root_directory);
void set_root (const gchar *root_uri);
gchar* get_selected ();
void set_selected (const gchar *filename);
void set_selected (const gchar *uri);
}
/* interface IAnjutaLauncher
......@@ -465,7 +465,7 @@ interface IAnjutaProjectManager
interface IAnjutaTodo
{
void load(gchar *filename);
void load(gchar *uri);
}
interface IAnjutaWizard
......
......@@ -106,6 +106,29 @@ anjuta_res_get_image (const gchar * pixfile)
return pixmap;
}
GtkWidget *
anjuta_res_get_image_sized (const gchar * pixfile, gint width, gint height)
{
GtkWidget *pixmap;
GdkPixbuf *pixbuf;
gchar *pathname;
if (!pixfile || !pixfile[0])
return gtk_image_new ();
pathname = anjuta_res_get_pixmap_file (pixfile);
if (!pathname)
{
g_warning (_("Could not find application pixmap file: %s"),
pixfile);
return gtk_image_new ();
}
pixbuf = gdk_pixbuf_new_from_file_at_size (pathname, width, height, NULL);
pixmap = gtk_image_new_from_pixbuf (pixbuf);
gdk_pixbuf_unref (pixbuf);
g_free (pathname);
return pixmap;
}
/* All the return strings MUST be freed */
gchar *
......
......@@ -30,6 +30,8 @@ extern "C"
GtkWidget* anjuta_res_lookup_widget (GtkWidget *widget,
const gchar *widget_name);
GtkWidget* anjuta_res_get_image (const gchar* filename);
GtkWidget* anjuta_res_get_image_sized (const gchar* filename,
gint width, gint height);
/* Do not unref the returned value */
GdkPixbuf* anjuta_res_get_pixbuf (const gchar *filename);
......
......@@ -50,10 +50,12 @@ ianjuta-file-loader
</para>
@obj:
@filename:
@uri:
@readonly:
@err:
@Returns:
<!-- # Unused Parameters # -->
@filename:
<!-- ##### FUNCTION ianjuta_file_loader_peek_interface ##### -->
......@@ -62,8 +64,10 @@ ianjuta-file-loader
</para>
@obj:
@filename:
@uri:
@err:
@Returns:
<!-- # Unused Parameters # -->
@filename:
......@@ -62,8 +62,10 @@ ianjuta-file-manager
</para>
@obj:
@root_directory:
@root_uri:
@err:
<!-- # Unused Parameters # -->
@root_directory:
<!-- ##### FUNCTION ianjuta_file_manager_set_selected ##### -->
......@@ -72,7 +74,9 @@ ianjuta-file-manager
</para>
@obj:
@filename:
@uri:
@err:
<!-- # Unused Parameters # -->
@filename:
......@@ -72,8 +72,10 @@ ianjuta-file-savable
</para>
@obj:
@filename:
@uri:
@err:
<!-- # Unused Parameters # -->
@filename:
<!-- ##### FUNCTION ianjuta_file_savable_set_dirty ##### -->
......
......@@ -33,7 +33,7 @@ ianjuta-file
</para>
@g_iface:
@get_filename:
@get_uri:
@open:
<!-- ##### FUNCTION ianjuta_file_error_quark ##### -->
......@@ -44,23 +44,15 @@ ianjuta-file
@Returns:
<!-- ##### FUNCTION ianjuta_file_get_filename ##### -->
<para>
</para>
@obj:
@err:
@Returns:
<!-- ##### FUNCTION ianjuta_file_open ##### -->
<para>
</para>
@obj:
@filename:
@uri:
@err:
<!-- # Unused Parameters # -->
@filename:
......@@ -64,6 +64,7 @@
@name:
@icon:
@err:
@Returns:
<!-- # Unused Parameters # -->
@msgman:
@file:
......
......@@ -33,12 +33,13 @@
</para>
@g_iface:
@buffer_flushed:
@message_clicked:
@append:
@buffer_append:
@clear:
@get_all_messages:
@get_line:
@get_message:
@get_current_message:
@select_next:
@select_previous:
......@@ -56,9 +57,12 @@
</para>
@obj:
@message:
@type:
@summary:
@details:
@err:
<!-- # Unused Parameters # -->
@message:
@message_view:
@e:
......@@ -88,32 +92,6 @@
@e:
<!-- ##### FUNCTION ianjuta_message_view_get_line ##### -->
<para>
</para>
@obj:
@err:
@Returns:
<!-- # Unused Parameters # -->
@message_view:
@e:
<!-- ##### FUNCTION ianjuta_message_view_get_message ##### -->
<para>
</para>
@obj:
@err:
@Returns:
<!-- # Unused Parameters # -->
@message_view:
@e:
<!-- ##### FUNCTION ianjuta_message_view_select_next ##### -->
<para>
......
......@@ -914,6 +914,37 @@ GnomeFileList
@e:
@Returns:
<!-- ##### FUNCTION ianjuta_file_get_filename ##### -->
<para>
</para>
@obj:
@err:
@Returns:
<!-- ##### FUNCTION ianjuta_message_view_get_line ##### -->
<para>
</para>
@obj:
@err:
@Returns:
@message_view:
@e:
<!-- ##### FUNCTION ianjuta_message_view_get_message ##### -->
<para>
</para>
@obj:
@err:
@Returns:
@message_view:
@e:
<!-- ##### FUNCTION prop_clear ##### -->
<para>
......
......@@ -13,6 +13,10 @@ plugin_in_files = anjuta-build-basic-autotools.plugin.in
anjuta_plugindir = $(prefix)/@NO_PREFIX_PACKAGE_PLUGIN_DIR@
anjuta_plugin_DATA = $(plugin_in_files:.plugin.in=.plugin)
# Plugin data files
plugin_datadir = $(prefix)/@NO_PREFIX_PACKAGE_DATA_DIR@/build
plugin_data_DATA = automake-c.filters
# NOTE :
# The naming convention is very intentional
# We are forced to use the prefix 'lib' by automake and libtool
......
......@@ -3,19 +3,19 @@
<menubar name="MenuMain">
<placeholder name="PlaceHolderBuildMenus">
<menu name="MenuBuild" action="ActionMenuBuild">
<menuitem name="CompileFile" action="ActionBuildCompileFile"/>
<menuitem name="BuildModule" action="ActionBuildBuildModule"/>
<menuitem name="BuildProject" action="ActionBuildBuildProject"/>
<menuitem name="BuildDistribution" action="ActionBuildDistribution"/>
<separator/>
<menuitem name="InstallModule" action="ActionBuildInstallModule"/>
<menuitem name="InstallProject" action="ActionBuildInstallProject"/>
<menuitem name="CleanProject" action="ActionBuildCleanProject"/>
<separator/>
<menuitem name="BuildDistribution" action="ActionBuildDistribution"/>
<menuitem name="Configure" action="ActionBuildConfigure"/>
<menuitem name="Autogen" action="ActionBuildAutogen"/>
<separator/>
<menuitem name="BuildModule" action="ActionBuildBuildModule"/>
<menuitem name="InstallModule" action="ActionBuildInstallModule"/>
<menuitem name="CleanModule" action="ActionBuildCleanModule"/>
<separator/>
<menuitem name="CompileFile" action="ActionBuildCompileFile"/>
<menuitem name="CleanProject" action="ActionBuildCleanProject"/>
</menu>
</placeholder>
</menubar>
......
^\s*(gcc|g\+\+|cc|c\+\+).*?\-c\s+([^\s]+).*?\-o\s+(\.libs/([^\s]+?)\.[^\s]+).*$|||Compiling \2 --> \4.lo [\3]|||0
^\s*(gcc|g\+\+|cc|c\+\+).*?\-o\s+(\.libs/([^\s]+?)\.[^\s]+).*?\-c\s+([^\s]+).*$|||Compiling \4 --> \3.lo [\2]|||0
^\s*(gcc|g\+\+|cc|c\+\+).*?\-c\s+([^\s]+).*?\-o\s+([^\s]+).*$|||Compiling \2 --> \3|||0
^\s*(gcc|g\+\+|cc|c\+\+).*?\-o\s+([^\s]+).*?\-c\s+([^\s]+).*$|||Compiling \3 --> \2|||0
^\s*(gcc|g\+\+|cc|c\+\+).*?\-c\s+([^\s]+).*$|||Compiling \2|||0
^.*?libtool \-\-mode=compile|||Invoking libtool for compilation|||0
^\s*(gcc|g\+\+|cc|c\+\+).*?\s+\-shared\s+.*?\-o\s+([^\s]+).*$|||Building library \2|||0
^ar cru\s+([^\s]+).*$"|||Building library \1|||0
^\s*(gcc|g\+\+|cc|c\+\+).*?\-o\s+([^\s]+).*$|||Building executable \2|||0
......@@ -27,12 +27,16 @@
#include <libanjuta/anjuta-stock.h>
#include <libanjuta/anjuta-launcher.h>
#include <libanjuta/pixmaps.h>
#include <libanjuta/anjuta-utils.h>
#include <libanjuta/interfaces/ianjuta-file.h>
#include <libanjuta/interfaces/ianjuta-buildable.h>
#include <libanjuta/interfaces/ianjuta-message-manager.h>
#include "build-basic-autotools.h"
#define ICON_FILE "anjuta-build-basic-autotools-plugin.png"
#define UI_FILE PACKAGE_DATA_DIR"/ui/anjuta-build-basic-autotools-plugin.ui"
#define MAKE_COMMAND "make -s"
gpointer parent_class;
......@@ -52,42 +56,84 @@ typedef struct
AnjutaLauncher *launcher;
} BuildContext;
static BuildPattern patterns_list[] =
{
{"^\\s*gcc.*?\\-c\\s+([^\\s]+).*?\\-o\\s+(\\.libs/([^\\s]+?)\\.[^\\s]+).*$", 0, N_("Compiling \\1 --> \\3.lo [\\2]"), NULL},
{"^\\s*gcc.*?\\-o\\s+(\\.libs/([^\\s]+?)\\.[^\\s]+).*?\\-c\\s+([^\\s]+).*$", 0, N_("Compiling \\3 --> \\2.lo [\\1]"), NULL},
{"^\\s*gcc.*?\\-c\\s+([^\\s]+).*?\\-o\\s+([^\\s]+).*$", 0, N_("Compiling \\1 --> \\2"), NULL},
{"^\\s*gcc.*?\\-o\\s+([^\\s]+).*?\\-c\\s+([^\\s]+).*$", 0, N_("Compiling \\2 --> \\1"), NULL},
{"^\\s*gcc.*?\\-c\\s+([^\\s]+).*$", 0, "Compiling \\1", NULL},
{"^.*?libtool \\-\\-mode=compile", 0, N_("Invoking libtool for compilation"), NULL},
{"^\\s*gcc.*?\\s+\\-shared\\s+.*?\\-o\\s+([^\\s]+).*$", 0, N_("Building library \\1"), NULL},
{"^ar cru\\s+([^\\s]+).*$", 0, N_("Building library \\1"), NULL},
{"^\\s*gcc.*?\\-o\\s+([^\\s]+).*$", 0, N_("Building executable \\1"), NULL}
};
static GList *patterns_list = NULL;
static void
build_regex_load ()
{
FILE *fp;
if (patterns_list)
return;
fp = fopen (PACKAGE_DATA_DIR"/build/automake-c.filters", "r");
if (fp == NULL)
{
g_warning ("Failed to load filters: %s",
PACKAGE_DATA_DIR"/build/automake-c.filters");
return;
}
while (!feof (fp) && !ferror (fp))
{
char buffer[1024];
gchar **tokens;
BuildPattern *pattern;
fgets (buffer, 1024, fp);
if (ferror (fp))
break;
tokens = g_strsplit (buffer, "|||", 3);
if (!tokens[0] || !tokens[1])
{
g_warning ("Cannot parse regex: %s", buffer);
g_strfreev (tokens);
continue;
}
pattern = g_new0 (BuildPattern, 1);
pattern->pattern = g_strdup (tokens[0]);
pattern->replace = g_strdup (tokens[1]);
if (tokens[2])
pattern->options = atoi (tokens[2]);
g_strfreev (tokens);
patterns_list = g_list_prepend (patterns_list, pattern);
}
patterns_list = g_list_reverse (patterns_list);
}
static void
build_regex_init ()
{
GList *node;
const char *error;
int erroffset;
int i;
if (patterns_list[0].regex)
build_regex_load ();
if (!patterns_list)
return;
for (i = 0; i < G_N_ELEMENTS (patterns_list); i++)
if (((BuildPattern*)(patterns_list->data))->regex)
return;
node = patterns_list;
while (node)
{
patterns_list[i].regex =
BuildPattern *pattern;
pattern = node->data;
pattern->regex =
pcre_compile(
patterns_list[i].pattern,
patterns_list[i].options,
pattern->pattern,
pattern->options,
&error, /* for error message */
&erroffset, /* for error offset */
NULL); /* use default character tables */
if (patterns_list[i].regex == NULL) {
if (pattern->regex == NULL) {
g_warning ("PCRE compilarion failed: %s: %d", error, erroffset);
}
}
}
node = g_list_next (node);
}
}
/* Regex processing */
......@@ -237,8 +283,9 @@ on_build_mesg_format (IAnjutaMessageView *view, const gchar *line,
AnjutaPlugin *plugin)
{
gchar *dummy_fn, *summary;
gint dummy_int, re;
gint dummy_int;
IAnjutaMessageViewType type;
GList *node;
g_return_if_fail (line != NULL);
......@@ -257,11 +304,14 @@ on_build_mesg_format (IAnjutaMessageView *view, const gchar *line,
type = IANJUTA_MESSAGE_VIEW_TYPE_INFO;
}
for (re = 0; re < G_N_ELEMENTS (patterns_list); re++)
node = patterns_list;
while (node)
{
summary = build_get_summary (line, &patterns_list[re]);
BuildPattern *pattern = node->data;
summary = build_get_summary (line, pattern);
if (summary)
break;
node = g_list_next (node);