Esempio n. 1
0
static gboolean key_pressed(GtkWidget *widget, GdkEventKey *event,
			    SourceWindow *sourcewin)
{

	if (!event || !sourcewin) return FALSE;
	
	switch (event->keyval) {
	case GDK_KEY_A:
	case GDK_KEY_a:
		if ((event->state & GDK_CONTROL_MASK) != 0)
			gtk_editable_select_region(GTK_EDITABLE(sourcewin->text), 0, -1);
		break;
	case GDK_KEY_W:
	case GDK_KEY_w:
		if ((event->state & GDK_CONTROL_MASK) != 0)
			gtk_widget_destroy(sourcewin->window);
		break;
	case GDK_KEY_Escape:
		source_window_destroy(sourcewin);
		return TRUE;
		break;
	}

	return FALSE;
}
Esempio n. 2
0
static gboolean key_pressed(GtkWidget *widget, GdkEventKey *event,
			    SourceWindow *sourcewin)
{
	if (!event || !sourcewin) return FALSE;

	switch (event->keyval) {
	case GDK_KEY_W:
	case GDK_KEY_w:
		if ((event->state & GDK_CONTROL_MASK) != 0)
			gtk_widget_destroy(sourcewin->window);
		break;
	case GDK_KEY_Escape:
		source_window_destroy(sourcewin);
		return TRUE;
		break;
	}

	return FALSE;
}
Esempio n. 3
0
void source_window_show_msg(SourceWindow *sourcewin, MsgInfo *msginfo)
{
	gchar *file;
	gchar *title;
	FILE *fp;
	gchar buf[BUFFSIZE];

	cm_return_if_fail(msginfo != NULL);

	sourcewin->updating = TRUE;
	file = procmsg_get_message_file(msginfo);
	sourcewin->updating = FALSE;
	
	if (sourcewin->deferred_destroy) {
		g_free(file);
		source_window_destroy(sourcewin);
		return;
	}

	cm_return_if_fail(file != NULL);

	if ((fp = g_fopen(file, "rb")) == NULL) {
		FILE_OP_ERROR(file, "fopen");
		g_free(file);
		return;
	}

	debug_print("Displaying the source of %s ...\n", file);

	title = g_strdup_printf(_("%s - Source"), file);
	gtk_window_set_title(GTK_WINDOW(sourcewin->window), title);
	g_free(title);
	g_free(file);

	while (fgets(buf, sizeof(buf), fp) != NULL)
		source_window_append(sourcewin, buf);

	fclose(fp);
}
Esempio n. 4
0
static gint source_window_delete_cb(GtkWidget *widget, GdkEventAny *event,
				    SourceWindow *sourcewin)
{
	source_window_destroy(sourcewin);
	return TRUE;
}