Ryujinx-GtkSharp/gtk/TextIter.custom
Mike Kestner 9f54a63375 2004-05-19 Mike Kestner <mkestner@ximian.com>
* gtk/Container.custom : add CallbackInvoke and use it in OnForall.

2004-05-19  Mike Kestner  <mkestner@ximian.com>

	* generator/Makefile.am : add TimeTGen.cs
	* generator/SymbolTable.cs : use new TimeTGen.
	* generator/StringGen.cs : s/GLibSharp/GLib
	* generator/TimeTGen.cs : generatable to marshal time_t.
	* glib/time_t_CustomMarshaler.cs : kill
	* glib/Makefile.am : remove time_t_CustomMarshaler.cs
	* glib/Markup.cs : s/GLibSharp/GLib
	* glib/Marshaller.cs : move to GLib namespace. Add methods to
	marshal time_t to and from DateTime.
	* glib/glue/time_t.c : kill
	* glib/glue/Makefile.am : remove time_t.c
	* glib/glue/makefile.win32 : remove time_t.o
	* gnome/*.custom : use GLib.Marshaller instead of the time_t custom
	marshaler.
	* gtk/*.custom : s/GLibSharp/GLib

svn path=/trunk/gtk-sharp/; revision=27704
2004-05-19 18:57:28 +00:00

67 lines
2.0 KiB
Plaintext
Executable File

// TextIter.custom - customizations to Gtk.TextIter
//
// Authors: Mike Kestner <mkestner@ximian.com>
//
// Copyright (c) 2004 Novell, Inc.
[DllImport("glibsharpglue")]
static extern IntPtr gtksharp_unichar_to_utf8_string (int raw);
[DllImport("libgtk-win32-2.0-0.dll")]
static extern int gtk_text_iter_get_char(ref Gtk.TextIter raw);
public string Char {
get {
IntPtr raw_ret = gtksharp_unichar_to_utf8_string (gtk_text_iter_get_char (ref this));
string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
return ret;
}
}
[DllImport("libgtk-win32-2.0-0.dll")]
static extern IntPtr gtk_text_iter_get_marks (ref TextIter iter);
public TextMark[] Marks {
get {
IntPtr raw_ret = gtk_text_iter_get_marks (ref this);
if (raw_ret == IntPtr.Zero)
return new TextMark [0];
GLib.SList list = new GLib.SList(raw_ret);
TextMark[] result = new TextMark [list.Count];
for (int i = 0; i < list.Count; i++)
result [i] = list [i] as TextMark;
return result;
}
}
[DllImport("libgtk-win32-2.0-0.dll")]
static extern IntPtr gtk_text_iter_get_tags (ref TextIter iter);
public TextTag[] Tags {
get {
IntPtr raw_ret = gtk_text_iter_get_tags (ref this);
if (raw_ret == IntPtr.Zero)
return new TextTag [0];
GLib.SList list = new GLib.SList(raw_ret);
TextTag[] result = new TextTag [list.Count];
for (int i = 0; i < list.Count; i++)
result [i] = list [i] as TextTag;
return result;
}
}
[DllImport("libgtk-win32-2.0-0.dll")]
static extern IntPtr gtk_text_iter_get_toggled_tags (ref TextIter iter, bool toggled_on);
public TextTag[] GetToggledTags (bool toggled_on)
{
IntPtr raw_ret = gtk_text_iter_get_toggled_tags (ref this, toggled_on);
if (raw_ret == IntPtr.Zero)
return new TextTag [0];
GLib.SList list = new GLib.SList(raw_ret);
TextTag[] result = new TextTag [list.Count];
for (int i = 0; i < list.Count; i++)
result [i] = list [i] as TextTag;
return result;
}