[comp.sources.x] v06i004: xdir -- Directory Browser, Patch4

argv%turnpike@Sun.COM (Dan Heller) (02/28/90)

Submitted-by: Erik M. van der Poel <uunet!kddlab!sran8.sra.co.jp!erik>
Posting-number: Volume 6, Issue 4
Archive-name: xdir/patch4
Patch-To: xdir: Volume 4, Issue 14-15,97
Patch-To: xdir: Volume 5, Issue 14,69

This is the fourth set of patches for the SelFile directory browser
package.

These patches are for people with patchlevel 3, which is the version
that appears in R4 (contrib/clients/selfile).

	* The R4 Athena Text widget now uses XtNuseStringInPlace.

	* In R4, the Athena Text widget does not set the insertion point
	  after replacing text.

	* XawScrollBarSetThumb -> XawScrollbarSetThumb

	* The name of the sample program has been changed from xdir to
	  selfile, to avoid conflict with Win Treese's xdir.

	* The patchlevel.h file has been updated to patch level four.

--
Erik M. van der Poel                  erik@sra.co.jp             (Japan)
SRA, 1-1-1 Hirakawa-cho, Chiyoda-ku   erik%sra.co.jp@uunet.uu.net  (USA)
Tokyo 102 Japan. TEL +81-3-234-2692   erik%sra.co.jp@mcvax.uucp (Europe)

Prereq: 3
*** ../old/patchlevel.h	Mon Jan 29 13:58:20 1990
--- patchlevel.h	Mon Jan 29 14:08:12 1990
***************
*** 1 ****
! #define PATCHLEVEL 3
--- 1 ----
! #define PATCHLEVEL 4
*** ../old/Draw.c	Mon Jan 29 13:58:18 1990
--- Draw.c	Mon Jan 29 14:08:10 1990
***************
*** 1,5 ****
  #ifndef lint
! static char rcsid[] = "$Header: Draw.c,v 1.2 89/12/15 11:59:08 kit Exp $";
  #endif
  
  /*
--- 1,5 ----
  #ifndef lint
! static char rcsid[] = "$Header: Draw.c,v 1.13 90/01/29 13:36:45 erik Exp $";
  #endif
  
  /*
***************
*** 235,241 ****
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  			XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 			XawScrollBarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  				selFileVScrolls[n],
--- 235,241 ----
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  			XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 			XawScrollbarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  				selFileVScrolls[n],
***************
*** 249,255 ****
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  			XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 			XawScrollBarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  				selFileHScrolls[n],
--- 249,255 ----
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  			XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 			XawScrollbarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  				selFileHScrolls[n],
***************
*** 266,274 ****
  			XtScrollBarSetThumb(selFileHScrolls[n], (float) 0.0,
  				(float) 1.0);
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 			XawScrollBarSetThumb(selFileVScrolls[n], (float) 0.0,
  				(float) 1.0);
! 			XawScrollBarSetThumb(selFileHScrolls[n], (float) 0.0,
  				(float) 1.0);
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
--- 266,274 ----
  			XtScrollBarSetThumb(selFileHScrolls[n], (float) 0.0,
  				(float) 1.0);
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 			XawScrollbarSetThumb(selFileVScrolls[n], (float) 0.0,
  				(float) 1.0);
! 			XawScrollbarSetThumb(selFileHScrolls[n], (float) 0.0,
  				(float) 1.0);
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
***************
*** 342,348 ****
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  	XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 	XawScrollBarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  		selFileVScrolls[n],
--- 342,348 ----
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  	XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 	XawScrollbarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  		selFileVScrolls[n],
***************
*** 648,654 ****
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  		    XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 		    XawScrollBarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  			selFileVScrolls[n],
--- 648,654 ----
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  		    XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 		    XawScrollbarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  			selFileVScrolls[n],
***************
*** 948,954 ****
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  		XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 		XawScrollBarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  			w,
--- 948,954 ----
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  		XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 		XawScrollbarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  			w,
***************
*** 1050,1056 ****
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  		XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 		XawScrollBarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  			w,
--- 1050,1056 ----
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  		XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 		XawScrollbarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  			w,
***************
*** 1194,1200 ****
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  		XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 		XawScrollBarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  			w,
--- 1194,1200 ----
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  		XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 		XawScrollbarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  			w,
*** ../old/Imakefile	Mon Jan 29 13:58:18 1990
--- Imakefile	Mon Jan 29 14:08:11 1990
***************
*** 1,5 ****
  #
! # This file describes how to build xdir, a simple application that uses the
  # XsraSelFile file selection dialog package.
  #
  # The program is linked with Athena widgets (Xaw) by default. It can be linked
--- 1,5 ----
  #
! # This file describes how to build selfile, a simple application that uses the
  # XsraSelFile file selection dialog package.
  #
  # The program is linked with Athena widgets (Xaw) by default. It can be linked
***************
*** 37,43 ****
  #------------------------------------------------------------------------------
  #
  #        DEFINES = -DSEL_FILE_XW
-         DEFINES = CompatibilityFlags
  
             SRCS = xdir.c SelFile.c Dir.c Path.c Draw.c
             OBJS = xdir.o SelFile.o Dir.o Path.o Draw.o
--- 37,42 ----
***************
*** 46,51 ****
  LOCAL_LIBRARIES = $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB)
  #LOCAL_LIBRARIES = $(XWLIB) $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB)
  
! ComplexProgramTarget(xdir)
  
  NormalLintTarget($(SRCS))
--- 45,50 ----
  LOCAL_LIBRARIES = $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB)
  #LOCAL_LIBRARIES = $(XWLIB) $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB)
  
! ComplexProgramTarget(selfile)
  
  NormalLintTarget($(SRCS))
*** ../old/Makefile	Mon Jan 29 13:58:18 1990
--- Makefile	Mon Jan 29 14:08:11 1990
***************
*** 7,13 ****
  SRCS = SelFile.c Dir.c Path.c Draw.c
  OBJS = SelFile.o Dir.o Path.o Draw.o
  
! xdir:			xdir.o $(OBJS)
  #	$(CC) $(CFLAGS) xdir.o $(OBJS) -lXw -lXt -lX11 -o $@
  	$(CC) $(CFLAGS) xdir.o $(OBJS) -lXaw -lXmu -lXt -lX11 -o $@
  
--- 7,13 ----
  SRCS = SelFile.c Dir.c Path.c Draw.c
  OBJS = SelFile.o Dir.o Path.o Draw.o
  
! selfile:		xdir.o $(OBJS)
  #	$(CC) $(CFLAGS) xdir.o $(OBJS) -lXw -lXt -lX11 -o $@
  	$(CC) $(CFLAGS) xdir.o $(OBJS) -lXaw -lXmu -lXt -lX11 -o $@
  
***************
*** 15,18 ****
  	lint -auxz $(CFLAGS) xdir.c $(SRCS)
  
  clean:
! 	rm -f xdir *.o core a.out
--- 15,18 ----
  	lint -auxz $(CFLAGS) xdir.c $(SRCS)
  
  clean:
! 	rm -f selfile *.o core a.out
*** ../old/Path.c	Mon Jan 29 13:58:19 1990
--- Path.c	Mon Jan 29 14:08:11 1990
***************
*** 1,5 ****
  #ifndef lint
! static char rcsid[] = "$Header: Path.c,v 1.2 89/12/15 11:59:24 kit Exp $";
  #endif
  
  /*
--- 1,5 ----
  #ifndef lint
! static char rcsid[] = "$Header: Path.c,v 1.12 90/01/29 13:46:27 erik Exp $";
  #endif
  
  /*
***************
*** 696,702 ****
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  		XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 		XawScrollBarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  			selFileHScroll,
--- 696,702 ----
  #ifdef SEL_FILE_PRE_R4_XAW_XMU
  		XtScrollBarSetThumb(
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
! 		XawScrollbarSetThumb(
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  			selFileHScroll,
***************
*** 768,773 ****
--- 768,774 ----
  		XtTextReplace(selFileField, 0, strlen(SFtextBuffer), &text);
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
  		XawTextReplace(selFileField, 0, strlen(SFtextBuffer), &text);
+ 		XawTextSetInsertionPoint(selFileField, strlen(SFtextBuffer));
  #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  	}
*** ../old/SelFile.c	Mon Jan 29 13:58:19 1990
--- SelFile.c	Mon Jan 29 14:08:11 1990
***************
*** 1,5 ****
  #ifndef lint
! static char rcsid[] = "$Header: SelFile.c,v 1.2 89/12/15 11:59:32 kit Exp $";
  #endif
  
  /*
--- 1,5 ----
  #ifndef lint
! static char rcsid[] = "$Header: SelFile.c,v 1.15 90/01/29 13:48:28 erik Exp $";
  #endif
  
  /*
***************
*** 381,387 ****
  	u_char		cstr[256];
  #endif /* def SEL_FILE_JAPANESE */
  
! 	Arg		arglist[24];
  
  #if defined(SEL_FILE_XW) || defined(SEL_FILE_XWTEXTEDIT)
  	SFfieldData	*data;
--- 381,387 ----
  	u_char		cstr[256];
  #endif /* def SEL_FILE_JAPANESE */
  
! 	Arg		arglist[20];
  
  #if defined(SEL_FILE_XW) || defined(SEL_FILE_XWTEXTEDIT)
  	SFfieldData	*data;
***************
*** 536,554 ****
  						resizeHeight	|
  						wordBreak	|
  						0);			i++;
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
  	XtSetArg(arglist[i], XtNeditType, XawtextEdit);			i++;
  	XtSetArg(arglist[i], XtNwrap, XawtextWrapWord);			i++;
  	XtSetArg(arglist[i], XtNresize, XawtextResizeHeight);		i++;
! #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
! 
! #ifdef SEL_FILE_PRE_R4_XAW_XMU
  	selFileField = XtCreateManagedWidget("selFileField",
- 		asciiStringWidgetClass, selFileForm, arglist, i);
- #else
- 	selFileField = XtCreateManagedWidget("selFileField",
  		asciiTextWidgetClass, selFileForm, arglist, i);
! #endif
  
  #endif /* defined(SEL_FILE_XW) || defined(SEL_FILE_XWTEXTEDIT) */
  
--- 536,551 ----
  						resizeHeight	|
  						wordBreak	|
  						0);			i++;
+ 	selFileField = XtCreateManagedWidget("selFileField",
+ 		asciiStringWidgetClass, selFileForm, arglist, i);
  #else /* def SEL_FILE_PRE_R4_XAW_XMU */
  	XtSetArg(arglist[i], XtNeditType, XawtextEdit);			i++;
  	XtSetArg(arglist[i], XtNwrap, XawtextWrapWord);			i++;
  	XtSetArg(arglist[i], XtNresize, XawtextResizeHeight);		i++;
! 	XtSetArg(arglist[i], XtNuseStringInPlace, True);		i++;
  	selFileField = XtCreateManagedWidget("selFileField",
  		asciiTextWidgetClass, selFileForm, arglist, i);
! #endif /* def SEL_FILE_PRE_R4_XAW_XMU */
  
  #endif /* defined(SEL_FILE_XW) || defined(SEL_FILE_XWTEXTEDIT) */
  
*** ../old/SFinternal.h	Mon Jan 29 13:58:19 1990
--- SFinternal.h	Mon Jan 29 14:08:11 1990
***************
*** 1,4 ****
! /* $Header: SFinternal.h,v 1.7 89/10/31 18:36:41 erik Exp $ */
  
  /*
   * Copyright 1989 Software Research Associates, Inc., Tokyo, Japan
--- 1,4 ----
! /* $Header: SFinternal.h,v 1.8 89/12/02 13:12:03 erik Exp $ */
  
  /*
   * Copyright 1989 Software Research Associates, Inc., Tokyo, Japan
***************
*** 27,32 ****
--- 27,33 ----
   */
  
  #include <X11/Intrinsic.h>
+ #include <X11/StringDefs.h>
  #include <X11/Xos.h>
  
  #if defined(SEL_FILE_XW) || defined(SEL_FILE_XWTEXTEDIT)

dan
-----------------------------------------------------------
		    O'Reilly && Associates
		argv@sun.com / argv@ora.com
	   632 Petaluma Ave, Sebastopol, CA 95472 
     800-338-NUTS, in CA: 800-533-NUTS, FAX 707-829-0104
    Opinions expressed reflect those of the author only.