home *** CD-ROM | disk | FTP | other *** search
- /* Last change dated 3.2.1991 */
-
- #define KIWI_WIN_IN
- #define MAX_HEADER_SIZE 40
- #define MAX_INPUT_NAME_LEN 30
- #define MAX_FUNCTION_LEN 15
- #define WIN_MIN_X 5
- #define WIN_MIN_Y 3
-
-
-
- struct input_parameter{ /* Eingabeparameterbeschreibung */
- char name[MAX_INPUT_NAME_LEN]; /* Datenname */
- char typ; /* Datentyp s,c,d,l,m,t,b */
- int lange; /* Laenge des Feldes */
- int nk; /* Nachkomma wenn float */
- char lage; /* Lage, rechts oder linksbuendig */
- char grenzen;/* Eingabe begrenzen */
- float min; /* Minimum */
- float max; /* Maximum */
- char eingabe;/* Muss Feld eingegeben werden */
- char hilfe[MAX_INPUT_NAME_LEN]; /* Hilfetext */
- char attrib; /* Attribut des Feldes */
- int x; /* X Position */
- int y; /* y Position */
- UCHAR pre_func[MAX_FUNCTION_LEN]; /* Startfunction */
- UCHAR post_func[MAX_FUNCTION_LEN]; /* Endefunction */
- };
-
-
- /* grenzen dient als bitfeld zur begrenzung und der Ein/Ausgabedefinition
-
- eingabe ist derart definiert
- bit 0 0 Nur Ausgabe 1 Ein oder Ausgabe
- bit 1 0 Kein Zwang 1 Eingabezwang Feld muß mit 13 oder 14 verlassen werden
- bit 2 0 Gross/Klein 1 Nur Gross bei Ascii und Logical
- bit 3 0 Normafeld 1 Daueranzeigefeld
-
- */
- /* Achtung Achtung Irgendwelche Zusaetze zu input_parameter duerfen
- nur am Ende des Struct angebracht werden, da anderfalls alle bisher
- existierenden Masken nicht mehr kombatibel sind. In load_window
- wird der struct bis zu einer erechneten groesse byteweise eingelesen,
- so das alle Anderungen vor dem Ende zu durcheinander fuehren muessen
- */
-
-
- struct kiwilib_window_typ{
- UCHAR typ[3]; /* Windowtyp; */
- USHORT x_start; /* Obere Linke Ecke x */
- USHORT y_start; /* Obere Linke Ecke y */
- USHORT x_ende; /* Untere Linke Ecke x */
- USHORT y_ende; /* Untere Linke Ecke y */
- USHORT sx_ende; /* Schattiertes Ende x */
- USHORT sy_ende; /* Schattiertes Ende y */
- SHORT nummer; /* Fensternummer */
- USHORT cursor_x; /* Cursorposition */
- USHORT cursor_y; /* Cursorposition */
- USHORT breite; /* Fensterbreite */
- USHORT hoehe; /* Fensterhoehe */
- USHORT sbreite; /* Fensterbreite mit Schatten */
- USHORT shoehe; /* Fensterhoehe mit Schatten */
- UCHAR attribut; /* Aktiver Attributwert */
- UCHAR inv_attrib; /* Attributwert invers */
- UCHAR nor_attrib; /* Attributwert Normal */
- UCHAR frame_attrib; /* Rahmenattribut */
- UCHAR ct_num; /* Farbtabellennummer */
- USHORT scroll_x; /* Position des Scrollbalken */
- USHORT scroll_y; /* Position des Scrollbalken */
- USHORT res_xa,res_ya; /* Reserveposition wenn maximal */
- USHORT res_xe,res_ye; /* Reserveposition wenn Minimal */
- CHAR *header; /* Fensterüberschrift */
- USHORT far *window_puffer; /* Zeiger auf Pufferspeicher */
- VSCREEN screen_link; /* Virtuell Screnn Number */
- USHORT vs_x_offset; /* X Versatz Window Screen */
- USHORT vs_y_offset; /* Y Versatz Window Screen */
- CHAR *mask_name; /* Maskenname wenn geladen */
- UCHAR ipcount; /* Anzahl Positionen bei Eingabe */
- struct input_parameter *ipp; /* Eingabeparameter fuer Maske */
- };
-
- #ifndef WINDOW_DEF
- extern long used_bytes;
- extern USHORT window_num;
- extern struct kiwilib_window_typ far *window_typ;
- extern WINDOW akt_window,window_row_ptr;
- extern WINDOW far *window_row;
- #else
- long used_bytes;
- USHORT window_num;
- struct kiwilib_window_typ far *window_typ;
- WINDOW akt_window,window_row_ptr;
- WINDOW far *window_row;
- #endif
-
- /*
- Verteilung des Bitfelds typ[0]
- Bit 0 Schatten rechts
- Bit 1 Schatten unten
- Bit 2 Rand
- Bit 3 Schatten eingeschaltet
- Bit 4 0 Kiwiattribut 1 Window-attribut
- Bit 5 0 Rand Einfach 1 Rand Doppelt
- Bit 6 0 Kein Link 1 Link to Vscreen
- Bit 7 Frei
-
-
- Verteilung des Bitfelds typ[1]
- Bit 0 0 Kein SAA 1 SAA Window
- Bit 1 0 Normal Window 1 Virtuell Window Close vs wnn closed
- Bit 2 0 Normalattri 1 Invers bei Erstellung (für Rand)
- Bit 3 0 Header dyn. 1 Header durch alloc
- Bit 4 0 Kein Inpfeld 1 Inpfeld durch malloc erzeugt
- Bit 5 0 Normal erzeugt1 Window geladen
- Bit 6 0 Normal erzeugt1 Window hidden
- Bit 7 0 Keine Slider 1 Mit Slider
-
-
- Verteilung des Bitfelds typ[2]
- Bit 0 0 Kein Slide 1 Slidewindows
- Bit 1 0 Normal 1 Maximaldarstellung
- Bit 2 0 Normal 2 Minimaldarstellung
-
-
- Verteilung des USHORT *ip
-
- Byte 0 X Position 0-255
- Byte 1 Y Position 0-128
- Bit 7 Byte 1 0 Normal 1 Inversattribut
-
-
- */