SimpleText DAY 6 - 今度こそtexiviewに表示してみる
今日こそ読み込んだテキストをtextviewに表示してみます。
textviewはテキストの表示を受け持っているだけで、
テキストの保持はtextbufferの分担です。
とりあえずコードを見てみましょう。
void
on_button_open_clicked ( GtkButton *button, gpointer user_data)
{
GtkEntry *entry = (GtkEntry *)lookup_widget((GtkWidget *)button, (gchar *)"entry");
gchar *filename = (gchar *)gtk_entry_get_text(entry);
g_print("%s\n", filename);
GError *error = NULL;
gchar *text;
gsize *size;GIOChannel *filepointer = g_io_channel_new_file(filename, "r", error);
g_io_channel_read_to_end(filepointer, &text, size, &error);
g_io_channel_close(fp);
g_print("%s\n", text);GtkTextIter iter;
GtkTextView *textview = (GtkTextView *)lookup_widget((GtkWidget *)button, (gchar *)"textview);
GtkTextBuffer *textbuffer = gtk_text_view_get_buffer(textview);
gtk_text_buffer_get_end_iter(textbuffer, &iter);
gtk_text_buffer_insert(textbuffer, &iter, text, strlen(text));
g_free(text);
}
- ファイルを読み込むたびに、同じ内容が追加されていく。
- ファイルが存在しなかったときのエラー処理も依然未解決。
というお寒い状況ではありますが、今日はこの辺で。