]> asedeno.scripts.mit.edu Git - PuTTY.git/blob - winstuff.h
Move MODULE files out of individual project directories into a
[PuTTY.git] / winstuff.h
1 /*
2  * winstuff.h: Windows-specific inter-module stuff.
3  */
4
5 /*
6  * Global variables. Most modules declare these `extern', but
7  * window.c will do `#define PUTTY_DO_GLOBALS' before including this
8  * module, and so will get them properly defined.
9  */
10 #ifdef PUTTY_DO_GLOBALS
11 #define GLOBAL
12 #else
13 #define GLOBAL extern
14 #endif
15
16 GLOBAL HINSTANCE hinst;
17
18 /*
19  * Exports from winctrls.c.
20  */
21
22 struct ctlpos {
23     HWND hwnd;
24     WPARAM font;
25     int dlu4inpix;
26     int ypos, width;
27     int xoff;
28     int boxystart, boxid;
29     char *boxtext;
30 };
31
32 /*
33  * Exports from winutils.c.
34  */
35 void split_into_argv(char *, int *, char ***, char ***);
36
37 /*
38  * Private structure for prefslist state. Only in the header file
39  * so that we can delegate allocation to callers.
40  */
41 struct prefslist {
42     int listid, upbid, dnbid;
43     int srcitem;
44     int dummyitem;
45     int dragging;
46 };
47
48 void ctlposinit(struct ctlpos *cp, HWND hwnd,
49                 int leftborder, int rightborder, int topborder);
50 HWND doctl(struct ctlpos *cp, RECT r,
51            char *wclass, int wstyle, int exstyle, char *wtext, int wid);
52 void bartitle(struct ctlpos *cp, char *name, int id);
53 void beginbox(struct ctlpos *cp, char *name, int idbox);
54 void endbox(struct ctlpos *cp);
55 void multiedit(struct ctlpos *cp, ...);
56 void radioline(struct ctlpos *cp, char *text, int id, int nacross, ...);
57 void bareradioline(struct ctlpos *cp, int nacross, ...);
58 void radiobig(struct ctlpos *cp, char *text, int id, ...);
59 void checkbox(struct ctlpos *cp, char *text, int id);
60 void statictext(struct ctlpos *cp, char *text, int lines, int id);
61 void staticbtn(struct ctlpos *cp, char *stext, int sid,
62                char *btext, int bid);
63 void static2btn(struct ctlpos *cp, char *stext, int sid,
64                 char *btext1, int bid1, char *btext2, int bid2);
65 void staticedit(struct ctlpos *cp, char *stext,
66                 int sid, int eid, int percentedit);
67 void staticddl(struct ctlpos *cp, char *stext,
68                int sid, int lid, int percentlist);
69 void combobox(struct ctlpos *cp, char *text, int staticid, int listid);
70 void staticpassedit(struct ctlpos *cp, char *stext,
71                     int sid, int eid, int percentedit);
72 void bigeditctrl(struct ctlpos *cp, char *stext,
73                  int sid, int eid, int lines);
74 void ersatztab(struct ctlpos *cp, char *stext, int sid, int lid, int s2id);
75 void editbutton(struct ctlpos *cp, char *stext, int sid,
76                 int eid, char *btext, int bid);
77 void sesssaver(struct ctlpos *cp, char *text,
78                int staticid, int editid, int listid, ...);
79 void envsetter(struct ctlpos *cp, char *stext, int sid,
80                char *e1stext, int e1sid, int e1id,
81                char *e2stext, int e2sid, int e2id,
82                int listid, char *b1text, int b1id, char *b2text, int b2id);
83 void charclass(struct ctlpos *cp, char *stext, int sid, int listid,
84                char *btext, int bid, int eid, char *s2text, int s2id);
85 void colouredit(struct ctlpos *cp, char *stext, int sid, int listid,
86                 char *btext, int bid, ...);
87 void prefslist(struct prefslist *hdl, struct ctlpos *cp, char *stext,
88                int sid, int listid, int upbid, int dnbid);
89 int handle_prefslist(struct prefslist *hdl,
90                      int *array, int maxmemb,
91                      int is_dlmsg, HWND hwnd,
92                      WPARAM wParam, LPARAM lParam);
93 void progressbar(struct ctlpos *cp, int id);
94 void fwdsetter(struct ctlpos *cp, int listid, char *stext, int sid,
95                char *e1stext, int e1sid, int e1id,
96                char *e2stext, int e2sid, int e2id,
97                char *btext, int bid);