[gtksourceviewmm] Add MIGRATION file.



commit 8555e9466fc9a68accdbac9597fefb1f2da3f259
Author: Krzesimir Nowak <qdlacz gmail com>
Date:   Sun Nov 14 00:23:06 2010 +0100

    Add MIGRATION file.
    
    * MIGRATION: Added a file about some API/ABI breaks, so maybe migration from
    2.0 to 3.0 will cause less headaches.

 MIGRATION |   44 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 44 insertions(+), 0 deletions(-)
---
diff --git a/MIGRATION b/MIGRATION
new file mode 100644
index 0000000..b8b9cd8
--- /dev/null
+++ b/MIGRATION
@@ -0,0 +1,44 @@
+some notable API/ABI breaks:
+- Stuff marked as deprecated was removed of course.
+- "source-mark-updated" signal in SourceBuffer now takes Gtk::TextMark instead
+of SourceMark.
+- Vfuncs in SourceCompletionProposal, SourceCompletionProvider
+and SourceUndoManager are now private. They shouldn't be called directly
+anyway - there are respective methods for this.
+- {set,get}_search_path() method in both SourceLanguageManager
+and SourceStyleSchemeManager classes now takes or returns container
+of std::strings instead of Glib::ustrings. The same with
+get_{language,style}_ids(), get_language(), guess_language(), get_scheme()
+and append_search_path() methods.
+- NASTY: SourceMark's constructor with category and name has parameter order
+the same as C gtk_source_mark_new(). Previously parameter order was reversed,
+because name parameter could be omitted - it has a default value of empty
+string, which was interpreted as creating anonymous SourceMark. Now there is
+separate constructor for creating anonymous SourceMarks.
+If there was:
+Glib::RefPtr<SourceMark> sm (SourceMark::create ("category", "name"));
+Now should be:
+Glib::RefPtr<SourceMark> sm (SourceMark::create ("name", "category"));
+If there was:
+Glib::RefPtr<SourceMark> sm (SourceMark::create ("category"));
+Nothing needs to be changed.
+If there was:
+Glib::RefPtr<SourceMark> sm (SourceMark::create ("category", ""));
+Now should be:
+Glib::RefPtr<SourceMark> sm (SourceMark::create ("category"));
+- If there is a code that somehow depended on SourceStyleScheme being
+a Glib::Interface, then this code is wrong, because it should be a Glib::Object.
+- SourceIter is gone - all its features are now supported by TextIter.
+- SourceCompletion is now a Glib::Object, not Gtk::Object. So it should be used
+as Glib::RefPtr<SourceCompletion> instead of plain SourceCompletion and created
+with SourceCompletion::create().
+- Namespace gtksourceview was renamed to Gsv. If there is a lot of code using
+gtksourceview:: namespace then a workaround would be creating a backward
+compatibility header and including it a place included by affected sources.
+A header could contain a lines like that:
+<BEGIN>
+#ifndef GTKSOURCEVIEWMM_COMPAT_H
+#define GTKSOURCEVIEWMM_COMPAT_H
+namespace gtksourceview = Gsv;
+#endif // GTKSOURCEVIEWMM_COMPAT_H
+<END>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]