This is FileObjects.c in view mode; [Download] [Up]
#if ( !defined(lint) && !defined(SABER)) static char PCN_rcsid[] = "$Header: /ufs/comp/carl/PCN/IF/Xsw/RCS/FileObjects.c,v 1.3 1992/01/23 03:14:00 carl Exp $"; #endif /****************************************************************************** * * * Copyright (C) The Aerospace Corporation 1991 * * * * This software was developed by The Aerospace Corporation as a * * research endeavor for the United States Air Force * * Space Systems Division. The current version of the Gauge * * computer program is available for release to you for * * educational and research purposes only. It is not * * to be used for commercial purposes. * * * * In addition, the following conditions shall apply. * * * * 1) The computer software and documentation were designed to * * satisfy internal Aerospace requirements only. * * The software is provided ``as is,'' and The Aerospace Corporation * * makes no warranty, expressed or implied, as to it accuracy, * * functioning, or fitness for a particular purpose. * * * * 2) The Aerospace Corporation and its personnel are not * * responsible for providing technical support or general assistance * * with respect to the software. * * * * 3) Neither The Aerospace Corporation nor its personnel shall be * * liable for claims, losses, or damages arising out of or connected * * with the use of this software. * * Your sole and exclusive remedy shall be to request a replacement * * copy of the program. * * * ******************************************************************************/ #include "Xsw.h" String XswGetExtension(extensions,file) SCPair *extensions; String file; { int i, j; i = strlen(file); file = file + i; while (extensions->string != NULL) { j = strlen(extensions->string); if (i > j && XswStrCmp(file - j, extensions->string)) return file - j; else extensions++; } return ""; } Boolean XswSCPairListCall(list, string, w, call_data) SCPair * list; String string; Widget w; XtPointer call_data; { static XtCallbackRec * callback_list; while (list->string != NULL) { if (XswStrCmp(string, list->string)) break; else list++; } if (list->string != NULL) { if (list->callback != NULL) { callback_list = list->callback; (*(callback_list[0].callback))(w, callback_list[0].closure, call_data); } return True; } else { return False; } } /************************************* Boolean XswGetHelp(list, ext, w) FileObjectData * list; String ext; Widget w; { while (list->ext != NULL) { if (XswStrCmp(ext, list->ext)) break; else list++; } if (list->ext != NULL) { String lib_dir = XswLibDir(w); String help_file; help_file = XtMalloc(sizeof(char) * (strlen(lib_dir)+strlen(list->help)+4)); sprintf(help_file, "%s/%s", lib_dir, list->help); XswShowHelp(help_file, "Help Window"); return True; } else { return False; } } ***************************************/ StringList XswSCPairListGetStrings(list) SCPair * list; { SCPair * temp = list; StringList slist; int cnt=0; int i; while (temp->string != NULL) { cnt++; temp++; } slist = (StringList)XtMalloc((cnt+1)*sizeof(String)); for(i=0; i<cnt; i++) { slist[i] = list[i].string; } slist[i] = NULL; return slist; }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.