return FALSE;
}
+WidgetFocusPrinter g_consoleWidgetFocusPrinter("console");
GtkWidget* Console_constructWindow(GtkWindow* toplevel)
{
widget_connect_escape_clear_focus_widget(g_console);
+ //g_consoleWidgetFocusPrinter.connect(g_console);
+
g_signal_connect(G_OBJECT(g_console), "populate-popup", G_CALLBACK(console_populate_popup), 0);
g_signal_connect(G_OBJECT(g_console), "destroy", G_CALLBACK(destroy_set_null), &g_console);
}
std::size_t Sys_Print(int level, const char* buf, std::size_t length)
{
- bool contains_newline = strchr(buf, '\n') != 0;
+ bool contains_newline = std::find(buf, buf+length, '\n') != buf+length;
if(level == SYS_ERR)
{
}
- GtkTextBufferOutputStream textBuffer(buffer, &iter, tag);
- if(!globalCharacterSet().isUTF8())
- {
- textBuffer << ConvertLocaleToUTF8(StringRange(buf, buf + length));
- }
- else
{
- textBuffer << StringRange(buf, buf + length);
+ GtkTextBufferOutputStream textBuffer(buffer, &iter, tag);
+ if(!globalCharacterSet().isUTF8())
+ {
+ BufferedTextOutputStream<GtkTextBufferOutputStream> buffered(textBuffer);
+ buffered << ConvertLocaleToUTF8(StringRange(buf, buf + length));
+ }
+ else
+ {
+ textBuffer << StringRange(buf, buf + length);
+ }
}
// update console widget immediatly if we're doing something time-consuming