Put insertion point at end of text on SetFocus
authorH.G. Muller <h.g.muller@hccnet.nl>
Sun, 3 Apr 2011 11:15:17 +0000 (13:15 +0200)
committerArun Persaud <apersaud@lbl.gov>
Thu, 7 Apr 2011 05:21:39 +0000 (22:21 -0700)
xoptions.c

index 6e995ea..fdc5513 100644 (file)
@@ -97,14 +97,18 @@ static Widget previous = NULL;
 
 void SetFocus(Widget w, XtPointer data, XEvent *event, Boolean *b)
 {
-    Arg args;
+    Arg args[2];
+    char *s;
 
     if(previous) {
-       XtSetArg(args, XtNdisplayCaret, False);
-       XtSetValues(previous, &args, 1);
+       XtSetArg(args[0], XtNdisplayCaret, False);
+       XtSetValues(previous, args, 1);
     }
-    XtSetArg(args, XtNdisplayCaret, True);
-    XtSetValues(w, &args, 1);
+    XtSetArg(args[0], XtNstring, &s);
+    XtGetValues(w, args, 1);
+    XtSetArg(args[0], XtNdisplayCaret, True);
+    XtSetArg(args[1], XtNinsertPosition, strlen(s));
+    XtSetValues(w, args, 2);
     XtSetKeyboardFocus((Widget) data, w);
     previous = w;
 }