Example #1
0
gboolean
e_plugin_ui_init (GtkUIManager *manager,
                  EMsgComposer *composer)
{
	GtkhtmlEditor *editor;
	EWebViewGtkHTML *web_view;

	editor = GTKHTML_EDITOR (composer);

	/* Add actions to the "composer" action group. */
	gtk_action_group_add_actions (
		gtkhtml_editor_get_action_group (editor, "composer"),
		entries, G_N_ELEMENTS (entries), composer);

	web_view = e_msg_composer_get_web_view (composer);

	g_signal_connect (
		web_view, "key_press_event",
		G_CALLBACK (key_press_cb), composer);

	g_signal_connect (
		web_view, "delete-event",
		G_CALLBACK (delete_cb), composer);

	return TRUE;
}
Example #2
0
static void
enable_disable_composer (EMsgComposer *composer,
                         gboolean enable)
{
	GtkhtmlEditor *editor;
	GtkAction *action;
	GtkActionGroup *action_group;

	g_return_if_fail (E_IS_MSG_COMPOSER (composer));

	editor = GTKHTML_EDITOR (composer);

	if (enable)
		gtkhtml_editor_run_command (editor, "editable-on");
	else
		gtkhtml_editor_run_command (editor, "editable-off");

	action = GTKHTML_EDITOR_ACTION_EDIT_MENU (composer);
	gtk_action_set_sensitive (action, enable);

	action = GTKHTML_EDITOR_ACTION_FORMAT_MENU (composer);
	gtk_action_set_sensitive (action, enable);

	action = GTKHTML_EDITOR_ACTION_INSERT_MENU (composer);
	gtk_action_set_sensitive (action, enable);

	action_group = gtkhtml_editor_get_action_group (editor, "composer");
	gtk_action_group_set_sensitive (action_group, enable);
}
gboolean
eex_ui_composer_actions (GtkUIManager *manager,
                         EMsgComposer *composer)
{
	static GtkActionEntry entries[] = {
		{ "eex-send-options",
		  NULL,
		  N_("_Send Options"),
		  NULL,
		  N_("Insert Send options"),
		  G_CALLBACK (action_send_options_cb) }
	};

	GtkhtmlEditor *editor;
	EComposerHeaderTable *headers;
	EComposerHeader *header;

	editor = GTKHTML_EDITOR (composer);

	/* Add actions to the "composer" action group. */
	e_action_group_add_actions_localized (
		gtkhtml_editor_get_action_group (editor, "composer"), GETTEXT_PACKAGE,
		entries, G_N_ELEMENTS (entries), composer);

	headers = e_msg_composer_get_header_table (composer);
	header = e_composer_header_table_get_header (headers, E_COMPOSER_HEADER_FROM);

	from_changed_cb (E_COMPOSER_FROM_HEADER (header), composer);
	g_signal_connect (G_OBJECT (header), "changed", G_CALLBACK (from_changed_cb), composer);

	return TRUE;
}
Example #4
0
gboolean
e_plugin_ui_init (GtkUIManager *ui_manager,
                  EMsgComposer *composer)
{
	GtkhtmlEditor *editor;

	static GtkToggleActionEntry entries[] = {
		{ "face-plugin",
		NULL,
		N_("Include _Face"),
		NULL,
		NULL,
		G_CALLBACK (action_toggle_face_cb),
		FALSE }
	};

	if (get_include_face_by_default ()) {
		gchar *face = get_face_base64 ();

		/* activate it only if has a face image available */
		entries[0].is_active = face && *face;

		g_free (face);
	}

	editor = GTKHTML_EDITOR (composer);

	/* Add actions to the "composer" action group. */
	gtk_action_group_add_toggle_actions (
		gtkhtml_editor_get_action_group (editor, "composer"),
		entries, G_N_ELEMENTS (entries), composer);

	return TRUE;
}
static void
from_changed_cb (EComposerFromHeader *header,
                 EMsgComposer *composer)
{
	GtkActionGroup *group;
	GtkAction *action;

	g_return_if_fail (header != NULL);
	g_return_if_fail (composer != NULL);

	group = gtkhtml_editor_get_action_group (GTKHTML_EDITOR (composer), "composer");
	g_return_if_fail (group != NULL);

	action = gtk_action_group_get_action (group, "eex-send-options");
	g_return_if_fail (action != NULL);

	gtk_action_set_visible (action, account_is_exchange (e_composer_from_header_get_active (header)));
}