[Gtk-sharp-list] string/length APIs

Miguel de Icaza miguel@ximian.com
26 Aug 2002 20:27:46 -0400


Hello guys,

   There are a number of APIs in Gtk# that take a text and a length
argument.  Like for instance:

	Clipboard.SetText (string text, int len)

    Which makes sense from the C world side of things, but I believe it
is not very C#-ish.  Would we like to change this?  

    I added in the past a few overloaded methods that computed the
length for us and called the base method, but maybe we should just have
the C#ish version?

    Attached is a list of functions with this property.


miguel.

/cvs/gtk-sharp/gtk/generated/Clipboard.cs:		static extern void gtk_clipboard_set_text(IntPtr raw, string text, int len);
/cvs/gtk-sharp/gtk/generated/Clipboard.cs:		public void SetText(string text, int len) {
/cvs/gtk-sharp/gtk/generated/Editable.cs:		void InsertText(string new_text, int new_text_length, out int position);
/cvs/gtk-sharp/gtk/generated/Entry.cs:		static extern void gtk_editable_insert_text(IntPtr raw, string new_text, int new_text_length, out int position);
/cvs/gtk-sharp/gtk/generated/Entry.cs:		public void InsertText(string new_text, int new_text_length, out int position) {
/cvs/gtk-sharp/gtk/generated/FileSelection.cs:		static extern void gtk_file_selection_set_filename(IntPtr raw, string filename);/cvs/gtk-sharp/gtk/generated/HTML.cs:		static extern IntPtr gtk_html_new_from_string(string str, int len);
/cvs/gtk-sharp/gtk/generated/HTML.cs:		public HTML(string str, int len)
/cvs/gtk-sharp/gtk/generated/HTML.cs:			Raw = gtk_html_new_from_string(str, len);
/cvs/gtk-sharp/gtk/generated/HTML.cs:		static extern void gtk_html_load_from_string(IntPtr raw, string str, int len);
/cvs/gtk-sharp/gtk/generated/HTML.cs:		public void LoadFromString(string str, int len) {
/cvs/gtk-sharp/gtk/generated/HTML.cs:			gtk_html_load_from_string(Handle, str, len);
/cvs/gtk-sharp/gtk/generated/IconSource.cs:		static extern void gtk_icon_source_set_filename(IntPtr raw, string filename);
/cvs/gtk-sharp/gtk/generated/Image.cs:		static extern void gtk_image_set_from_file(IntPtr raw, string filename);
/cvs/gtk-sharp/gtk/generated/IMContext.cs:		static extern void gtk_im_context_set_surrounding(IntPtr raw, string text, int len, int cursor_index);
/cvs/gtk-sharp/gtk/generated/IMContext.cs:		public void SetSurrounding(string text, int len, int cursor_index) {
/cvs/gtk-sharp/gtk/generated/SelectionData.cs:		static extern bool gtk_selection_data_set_text(ref Gtk.SelectionData raw, string str, int len);
/cvs/gtk-sharp/gtk/generated/SelectionData.cs:		public bool SetText(string str, int len) {
/cvs/gtk-sharp/gtk/generated/TextBuffer.cs:		static extern void gtk_text_buffer_set_text(IntPtr raw, string text, int len);
/cvs/gtk-sharp/gtk/generated/TextBuffer.cs:		public void SetText(string text, int len) {
/cvs/gtk-sharp/gtk/generated/TextBuffer.cs:		static extern bool gtk_text_buffer_insert_interactive(IntPtr raw, ref Gtk.TextIter iter, string text, int len, bool default_editable);
/cvs/gtk-sharp/gtk/generated/TextBuffer.cs:		public bool InsertInteractive(Gtk.TextIter iter, string text, int len, bool default_editable) {
/cvs/gtk-sharp/gtk/generated/TextBuffer.cs:		static extern bool gtk_text_buffer_insert_interactive_at_cursor(IntPtr raw, string text, int len, bool default_editable);
/cvs/gtk-sharp/gtk/generated/TextBuffer.cs:		public bool InsertInteractiveAtCursor(string text, int len, bool default_editable) {
/cvs/gtk-sharp/gtk/generated/TextBuffer.cs:		static extern void gtk_text_buffer_insert(IntPtr raw, ref Gtk.TextIter iter, string text, int len);
/cvs/gtk-sharp/gtk/generated/TextBuffer.cs:		public void Insert(Gtk.TextIter iter, string text, int len) {
/cvs/gtk-sharp/gtk/generated/TextBuffer.cs:		static extern void gtk_text_buffer_insert_at_cursor(IntPtr raw, string text, int len);
/cvs/gtk-sharp/gtk/generated/TextBuffer.cs:		public void InsertAtCursor(string text, int len) {
/cvs/gtk-sharp/gtk/generated/Widget.cs:		static extern void gtk_widget_class_path(IntPtr raw, uint path_length, string path, string path_reversed);
/cvs/gtk-sharp/gtk/generated/Widget.cs:		public void ClassPath(uint path_length, string path, string path_reversed) {
/cvs/gtk-sharp/gtk/generated/Widget.cs:		static extern void gtk_widget_path(IntPtr raw, uint path_length, string path, string path_reversed);
/cvs/gtk-sharp/gtk/generated/Widget.cs:		public void Path(uint
path_length, string path, string path_reversed) {