Commit ea91ed09 by Olga Rodimina Committed by Tom Tromey

2003-12-01 Olga Rodimina <rodimina@redhat.com>

	* java/awt/TextComponent.java:
	(getSelectionStart): Updated javadocs.
	(getSelectionEnd): Ditto.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer:
	(getSelectionStart): Changed to return caret position if no
	text is selected
	(getSelectionEnd): Ditto.

From-SVN: r74124
parent bde5dd25
2003-12-01 Olga Rodimina <rodimina@redhat.com>
* java/awt/TextComponent.java:
(getSelectionStart): Updated javadocs.
(getSelectionEnd): Ditto.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer:
(getSelectionStart): Changed to return caret position if no
text is selected
(getSelectionEnd): Ditto.
2003-12-01 Thomas Fitzsimmons <fitzsim@redhat.com> 2003-12-01 Thomas Fitzsimmons <fitzsim@redhat.com>
* gnu/awt/gtk/GtkButtonPeer.java, gnu/awt/gtk/gtkcommon.cc, * gnu/awt/gtk/GtkButtonPeer.java, gnu/awt/gtk/gtkcommon.cc,
......
...@@ -163,7 +163,7 @@ getSelectedText() ...@@ -163,7 +163,7 @@ getSelectedText()
/** /**
* Returns the starting position of the selected text region. * Returns the starting position of the selected text region.
* // FIXME: What is returned if there is no selected text? * If the text is not selected then caret position is returned.
* *
* @return The starting position of the selected text region. * @return The starting position of the selected text region.
*/ */
...@@ -196,7 +196,7 @@ setSelectionStart(int selectionStart) ...@@ -196,7 +196,7 @@ setSelectionStart(int selectionStart)
/** /**
* Returns the ending position of the selected text region. * Returns the ending position of the selected text region.
* // FIXME: What is returned if there is no selected text. * If the text is not selected, then caret position is returned
* *
* @return The ending position of the selected text region. * @return The ending position of the selected text region.
*/ */
......
...@@ -194,6 +194,8 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionStart ...@@ -194,6 +194,8 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionStart
GtkTextIter start; GtkTextIter start;
GtkTextIter end; GtkTextIter end;
int starti, endi; int starti, endi;
GtkTextMark *mark;
GtkTextIter iter;
ptr = NSA_GET_PTR (env, obj); ptr = NSA_GET_PTR (env, obj);
...@@ -204,6 +206,8 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionStart ...@@ -204,6 +206,8 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionStart
editable = GTK_EDITABLE (ptr); editable = GTK_EDITABLE (ptr);
if (gtk_editable_get_selection_bounds (editable, &starti, &endi)) if (gtk_editable_get_selection_bounds (editable, &starti, &endi))
pos = starti; pos = starti;
else
pos = gtk_editable_get_position (editable);
} }
else else
{ {
...@@ -221,6 +225,12 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionStart ...@@ -221,6 +225,12 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionStart
buf = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text)); buf = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text));
if (gtk_text_buffer_get_selection_bounds(buf, &start, &end)) if (gtk_text_buffer_get_selection_bounds(buf, &start, &end))
pos = gtk_text_iter_get_offset (&start); pos = gtk_text_iter_get_offset (&start);
else
{
mark = gtk_text_buffer_get_insert (buf);
gtk_text_buffer_get_iter_at_mark (buf, &iter, mark);
pos = gtk_text_iter_get_offset (&iter);
}
} }
} }
...@@ -241,6 +251,8 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionEnd ...@@ -241,6 +251,8 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionEnd
GtkTextIter start; GtkTextIter start;
GtkTextIter end; GtkTextIter end;
int starti, endi; int starti, endi;
GtkTextMark *mark;
GtkTextIter iter;
ptr = NSA_GET_PTR (env, obj); ptr = NSA_GET_PTR (env, obj);
...@@ -251,6 +263,8 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionEnd ...@@ -251,6 +263,8 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionEnd
editable = GTK_EDITABLE (ptr); editable = GTK_EDITABLE (ptr);
if (gtk_editable_get_selection_bounds (editable, &starti, &endi)) if (gtk_editable_get_selection_bounds (editable, &starti, &endi))
pos = endi; pos = endi;
else
pos = gtk_editable_get_position (editable);
} }
else else
{ {
...@@ -268,6 +282,12 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionEnd ...@@ -268,6 +282,12 @@ Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_getSelectionEnd
buf = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text)); buf = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text));
if (gtk_text_buffer_get_selection_bounds(buf, &start, &end)) if (gtk_text_buffer_get_selection_bounds(buf, &start, &end))
pos = gtk_text_iter_get_offset (&end); pos = gtk_text_iter_get_offset (&end);
else
{
mark = gtk_text_buffer_get_insert (buf);
gtk_text_buffer_get_iter_at_mark (buf, &iter, mark);
pos = gtk_text_iter_get_offset (&iter);
}
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment