Revision: 489 http://geany-plugins.svn.sourceforge.net/geany-plugins/?rev=489&view=rev Author: frlan Date: 2009-02-18 00:21:13 +0000 (Wed, 18 Feb 2009)
Log Message: ----------- GeanyLaTeX: Format selected text if any
Modified Paths: -------------- trunk/geanylatex/ChangeLog trunk/geanylatex/src/formatutils.c
Modified: trunk/geanylatex/ChangeLog =================================================================== --- trunk/geanylatex/ChangeLog 2009-02-18 00:20:44 UTC (rev 488) +++ trunk/geanylatex/ChangeLog 2009-02-18 00:21:13 UTC (rev 489) @@ -1,3 +1,8 @@ +2009-02-18 Frank Lanitz <frank(at)frank(dot)uvena(dot)de> + + * Formating of selected text + + 2009-02-15 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* Added a menu entry for easy formating of text
Modified: trunk/geanylatex/src/formatutils.c =================================================================== --- trunk/geanylatex/src/formatutils.c 2009-02-18 00:20:44 UTC (rev 488) +++ trunk/geanylatex/src/formatutils.c 2009-02-18 00:21:13 UTC (rev 489) @@ -25,8 +25,32 @@ G_GNUC_UNUSED gpointer gdata) { gint format = GPOINTER_TO_INT(gdata); + GeanyDocument *doc = NULL; + doc = document_get_current();
- glatex_insert_string(glatex_format_pattern[format], TRUE); - glatex_insert_string("{", TRUE); - glatex_insert_string("}", FALSE); + if (doc != NULL) + { + if (sci_has_selection(doc->editor->sci)) + { + gint selection_len = sci_get_selected_text_length(doc->editor->sci); + gchar *selection = g_malloc(selection_len + 1); + const gchar *replacement = NULL; + + sci_get_selected_text(doc->editor->sci, selection); + + replacement = g_strconcat(glatex_format_pattern[format],"{", + selection, "}", NULL); + + sci_replace_sel(doc->editor->sci, replacement); + g_free(selection); + } + else + { + glatex_insert_string(glatex_format_pattern[format], TRUE); + glatex_insert_string("{", TRUE); + glatex_insert_string("}", FALSE); + } + } } + +
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.