<para>Displayed when compiled with the option --enable-debug-log. This defines the verbosity of debug info sent to console and log window (0 disables the debug output).</para>\r
</listitem>\r
</varlistentry>\r
+ <varlistentry>\r
+ <term>\r
+ <guilabel>Log Window max. lines</guilabel>\r
+ </term>\r
+ <listitem>\r
+ <para>The maximum number of data lines to be displayed. The window will show the most recent data.</para>\r
+ </listitem>\r
+ </varlistentry>\r
</variablelist>\r
</section>\r
</section>\r
GtkTextView *text;
GtkTextBuffer *buffer;
GtkTextIter iter;
- guint line_limit = 1000; //FIXME: option
static GList *memory = NULL;
if (logwindow == NULL)
memory = g_list_prepend(memory, msg);
- while (g_list_length(memory) >= line_limit)
+ while (g_list_length(memory) >= options->log_window_lines)
{
GList *work = g_list_last(memory);
LogMsg *oldest_msg = work->data;
text = GTK_TEXT_VIEW(logwindow->text);
buffer = gtk_text_view_get_buffer(text);
- if (line_limit > 0 && logwindow->lines >= line_limit)
+ if (options->log_window_lines > 0 && logwindow->lines >= options->log_window_lines)
{
GtkTextIter start, end;
gtk_text_buffer_get_start_iter(buffer, &start);
end = start;
- gtk_text_iter_forward_lines(&end, logwindow->lines - line_limit);
+ gtk_text_iter_forward_lines(&end, logwindow->lines - options->log_window_lines);
gtk_text_buffer_delete(buffer, &start, &end);
}
options->stereo.fixed_x2 = 0;
options->stereo.fixed_y2 = 1125;
+ options->log_window_lines = 1000;
+
return options;
}
gboolean use_saved_window_positions_for_new_windows;
gboolean tools_restore_state;
+ guint log_window_lines;
+
/* info sidebar component heights */
struct {
gint height;
pref_spin_new_int(group, _("Debug level:"), NULL,
DEBUG_LEVEL_MIN, DEBUG_LEVEL_MAX, 1, get_debug_level(), &debug_c);
+
+ pref_spin_new_int(group, _("Log Window max. lines:"), NULL,
+ 1, 99999, 1, options->log_window_lines, &options->log_window_lines);
#endif
}
WRITE_NL(); WRITE_BOOL(*options, use_saved_window_positions_for_new_windows);
WRITE_NL(); WRITE_BOOL(*options, tools_restore_state);
+ WRITE_NL(); WRITE_UINT(*options, log_window_lines);
+
/* File operations Options */
WRITE_NL(); WRITE_BOOL(*options, file_ops.enable_in_place_rename);
WRITE_NL(); WRITE_BOOL(*options, file_ops.confirm_delete);
if (READ_BOOL(*options, use_saved_window_positions_for_new_windows)) continue;
if (READ_BOOL(*options, tools_restore_state)) continue;
+ if (READ_UINT(*options, log_window_lines)) continue;
+
/* Properties dialog options */
if (READ_CHAR(*options, properties.tabs_order)) continue;