root/trunk/txlib/txtpriv.h

Revision 1, 4.6 kB (checked in by jvw, 3 years ago)

Initial check-in for TxWin? version 1.02 sources

Line 
1#ifndef TXTPRIV_H
2#define TXTPRIV_H
3//
4//                     TxWin, Textmode Windowing Library
5//
6//   Original code Copyright (c) 1995-2005 Fsys Software and Jan van Wijk
7//
8// ==========================================================================
9//
10// This file contains Original Code and/or Modifications of Original Code as
11// defined in and that are subject to the GNU Lesser General Public License.
12// You may not use this file except in compliance with the License.
13// BY USING THIS FILE YOU AGREE TO ALL TERMS AND CONDITIONS OF THE LICENSE.
14// A copy of the License is provided with the Original Code and Modifications,
15// and is also available at http://www.dfsee.com/txwin/lgpl.htm
16//
17// This library is free software; you can redistribute it and/or modify
18// it under the terms of the GNU Lesser General Public License as published
19// by the Free Software Foundation; either version 2.1 of the License,
20// or (at your option) any later version.
21//
22// This library is distributed in the hope that it will be useful,
23// but WITHOUT ANY WARRANTY; without even the implied warranty of
24// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
25// See the GNU Lesser General Public License for more details.
26//
27// You should have received a copy of the GNU Lesser General Public License
28// along with this library; (lgpl.htm) if not, write to the Free Software
29// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
30//
31// Questions on TxWin licensing can be directed to: txwin@fsys.nl
32//
33// ==========================================================================
34//
35//
36// TX text library private interfaces
37//
38// Author: J. van Wijk
39//
40// Developed for LPTool/DFSee utilities
41//
42// JvW  19-08-2005   Initial version, cleanup public interfaces
43
44
45//============ TXCON
46                                                // Hook control structures
47extern  TXH_INFO   *txh_clean;                  // clean TxPrint handler
48extern  TXH_INFO   *txh_raw;                    // raw ansi TxPrint handler
49
50//============ TXPARSE
51
52typedef struct txa_element                      // command parser element
53{
54   ULONG               signature;               // signature value
55   int                 optc;                    // number of options
56   TXA_OPTION          opt[TXA_SIZE];           // array of options
57   int                 argc;                    // number of arguments
58   char               *argv[TXA_ARGC +1];       // array of argv pointers
59   TXLN                comment;                 // stripped comment
60   struct txa_element *prev;                    // prev element on stack
61} TXA_ELEMENT;                                  // end of struct "txa_element"
62
63extern TXA_ELEMENT  *txacur;                    // current, top of stack
64extern TXA_ELEMENT  *txa1st;                    // first, bottom of stack
65
66
67// Take handle value and convert to element, validate signature
68TXA_ELEMENT *txaHandle2Element                  // RET   element ptr or NULL
69(
70   TXHANDLE            txh                      // IN    TXA handle
71);
72
73// Create new TXA element, and attach it to the TXA stack
74ULONG TxaNewParseElement                        // RET   result
75(
76   TXA_ELEMENT       **element                  // OUT   TXA element
77);
78
79
80// Read one item (option or argument) and store it in the txa element
81ULONG txaReadAndStoreItem                       // RET   result
82(
83   char               *item,                    // IN    item string
84   int                 len,                     // IN    length of item
85   BOOL                freeform,                // IN    free format options
86   BOOL                passthrough,             // IN    keep parameter quotes
87   TXA_ELEMENT        *txa                      // INOUT TXA element
88);
89
90
91// Copy item in string, honor embedded strings
92char *txaCopyItem                               // RET   copied string
93(
94   char               *destin,                  // OUT   destination buffer
95   char               *start,                   // IN    start position
96   int                 length                   // IN    max length to copy
97);
98
99
100//============ TXTRACE
101
102#define TXTHREADS                 0x10          // Shown with unique thread
103#define TXTHREADID (TXCURTHREAD & 0x0f)         // indentation in trace
104extern  ULONG       TxTrIndent[];               // trace indent per thread
105extern  BOOL        TxTrTstamp;                 // timestamp in trace ?
106
107
108//============ TXCRITE
109extern ULONG        TxAutoFail;                 // AutoFail active flag
110                                                // call to succeeed
111
112#endif
Note: See TracBrowser for help on using the browser.