/** * parser_cxx_assist_install: * @assist: ParserCxxAssist object * @ieditor: Editor to install support for * @iparser: Parser to install support for * * Returns: Registers provider for editor */ static void parser_cxx_assist_install (ParserCxxAssist *assist, IAnjutaEditor *ieditor) { g_return_if_fail (assist->priv->iassist == NULL); if (IANJUTA_IS_EDITOR_ASSIST (ieditor)) { assist->priv->iassist = IANJUTA_EDITOR_ASSIST (ieditor); ianjuta_editor_assist_add (IANJUTA_EDITOR_ASSIST (ieditor), IANJUTA_PROVIDER(assist), NULL); g_signal_connect (ieditor, "cancelled", G_CALLBACK (parser_cxx_assist_cancelled), assist); } else assist->priv->iassist = NULL; if (IANJUTA_IS_EDITOR_TIP (ieditor)) assist->priv->itip = IANJUTA_EDITOR_TIP (ieditor); else assist->priv->itip = NULL; if (IANJUTA_IS_FILE (assist->priv->iassist)) { GFile *file = ianjuta_file_get_file ( IANJUTA_FILE (assist->priv->iassist), NULL); if (file != NULL) { assist->priv->editor_filename = g_file_get_path (file); g_object_unref (file); } } }
static void install_support (JSLang *plugin) { const gchar *lang; IAnjutaLanguage* lang_manager; setPlugin (plugin); if (!IANJUTA_IS_EDITOR (plugin->current_editor)) return; lang_manager = anjuta_shell_get_interface (ANJUTA_PLUGIN (plugin)->shell, IAnjutaLanguage, NULL); if (!lang_manager) return; lang = ianjuta_language_get_name_from_editor (lang_manager, IANJUTA_EDITOR_LANGUAGE (plugin->current_editor), NULL); if (!lang || !g_str_equal (lang, "JavaScript")) return; DEBUG_PRINT ("%s", "JSLang: Install support"); ianjuta_editor_assist_add (IANJUTA_EDITOR_ASSIST(plugin->current_editor), IANJUTA_PROVIDER(plugin), NULL); }