home *** CD-ROM | disk | FTP | other *** search
- // Copyright (C) 1995 Steve Hayman
- // Use is governed by the MiscKit license
-
- #import <appkit/appkit.h>
- #import <misckit/misckit.h>
-
- /*
- * $Header: /SAHayman/LocalDeveloper/Source/MiscKit/Palettes/MiscShell/MiscShell.subproj/RCS/MiscShell.h,v 1.2 94/08/04 17:39:34 shayman Exp Locker: shayman $
- * $Log: MiscShell.h,v $
- * Revision 1.2 94/08/04 17:39:34 shayman
- * Fiddling with string values
- *
- */
-
- @interface MiscShell : Object
- {
- id standardOutput;
- id standardError;
- id standardInput;
-
- id v1;
- id v2;
- id v3;
- id v4;
-
-
- // Things you *can't* hook up in Interface Builder
- id _target;
- SEL action;
- MiscString *script;
-
- MiscSubprocess *process;
-
- MiscString *currentLine;
- MiscString *fullOutput;
- BOOL currentLineIsComplete;
- BOOL executionInProgress;
- BOOL runToCompletion;
-
- MiscString *execArg0, *execArg1, *execArg2;
- MiscStringArray *lines;
- char delimiter;
-
- BOOL sortWhenColumnsMove;
- MiscString *customDelimiters;
-
- List *linesBrokenIntoFields;
-
- }
-
- - init;
- - initWithCommand:(const char *)command;
- - free;
-
-
- - read: (NXTypedStream *)stream;
- - write: (NXTypedStream *)stream;
-
-
- // Control-style Target-action stuff (shayman)
- - target;
- - setTarget:aTarget;
- - (SEL)action;
- - setAction:(SEL)anAction;
- - (const char *)stringValue;
- - (double) doubleValue;
- - (float) floatValue;
- - (int) intValue;
-
- - (MiscString *)script;
- - setScript:(MiscString *)script;
-
- - (BOOL) runToCompletion;
- - setRunToCompletion:(BOOL)c;
- - (int) sortWhenColumnsMove;
- - setSortWhenColumnsMove:(int)c;
-
- - (char)delimiter;
- - setDelimiter:(char)c;
- - (MiscString *)customDelimiters;
- - setCustomDelimiters:(MiscString *)d;
-
- - setExecArgs:(const char *)a1:(const char *)a2:(const char *)a3;
-
- // Messages that might arrive from various Control objects
-
- - executeScript:sender;
- - executeFromStringValue:sender;
- - executeFromTitle:sender;
- - executeFromAltTitle:sender;
- - pause:sender;
- - resume:sender;
- - terminate:sender;
-
- - takeStdinFrom:sender;
- - writeToStdin:(const char *)str;
-
-
- // Methods that return particular lines
- - (MiscStringArray *)lines;
- - (MiscString *)line:(int)n;
- - (MiscString *)line:(int)n field:(int)f;
- - (int)lineCount;
- - (int) fieldsInLine:(int)n;
-
-
- @end