]> asedeno.scripts.mit.edu Git - PuTTY.git/blob - putty.r
End of a night's work. Not a very useful state, but this is my branch and
[PuTTY.git] / putty.r
1 /* $Id: putty.r,v 1.1.2.6 1999/02/20 23:55:55 ben Exp $ */
2 /* PuTTY resources */
3
4 #define PICT_RezTemplateVersion 1
5
6 #include "Types.r"
7
8 /* Get resource IDs we share with C code */
9 #include "macresid.h"
10
11 /*
12  * Finder-related resources
13  */
14
15 /* For now, PuTTY uses the signature "pTTY" */
16
17 type 'pTTY' as 'STR ';
18
19 resource 'pTTY' (0, purgeable) {
20     "PuTTY experimental Mac port"
21 };
22
23 resource 'vers' (1, purgeable) {
24     0x00, 0x45,         /* Major and minor (BCD) */
25     development, 0,     /* Status and pre-release */
26     2,                  /* Region code (2 = UK) */
27     "Mac exp",          /* Short version (list views) */
28     "Mac experimental", /* Long version (get info) */
29 };
30
31 resource 'SIZE' (-1) {
32     reserved,
33     ignoreSuspendResumeEvents,
34     reserved,
35     cannotBackground,
36     needsActivateOnFGSwitch,
37     backgroundAndForeground,
38     dontGetFrontClicks,
39     ignoreAppDiedEvents,
40     is32BitCompatible,
41     notHighLevelEventAware,
42     onlyLocalHLEvents,
43     notStationeryAware,
44     useTextEditServices,
45     reserved,
46     reserved,
47     reserved,
48     65536,              /* Minimum size */
49     65536,              /* Preferred size */
50 };
51
52 resource 'FREF' (128, purgeable) {
53     /* The application itself */
54     'APPL', 128, ""
55 };
56
57 resource 'FREF' (129, purgeable) {
58     /* Saved session */
59     'Sess', 129, ""
60     };
61
62 resource 'FREF' (130, purgeable) {
63     /* SSH host keys database */
64     'HKey', 130, ""
65 };
66
67 resource 'BNDL' (128, purgeable) {
68     'pTTY', 0,
69     {
70         'ICN#', {
71             128, 128,
72             129, 129,
73             130, 130
74         },
75         'FREF', {
76             128, 128,
77             129, 129,
78             130, 130
79         };
80     };
81 };
82
83 /* Icons, courtesy of DeRez */
84
85 /* Application icon */
86 resource 'ICN#' (128, purgeable) {
87         {       /* array: 2 elements */
88                 /* [1] */
89                 $"0000 3FFE 0000 4001 0000 4FF9 0000 5005"
90                 $"0000 5545 0000 5005 0000 5405 0000 5005"
91                 $"0000 5505 0000 5005 0000 4FF9 0000 4001"
92                 $"0000 4001 7FFC 407D 8002 4001 9FF2 4001"
93                 $"A00A 3FFE AA8A 2002 A00A 3FFE A80A 0000"
94                 $"A00A 0000 AA0A 0000 A00A 0000 9FF2 0000"
95                 $"8002 0000 8002 0000 80FA 0000 8002 0000"
96                 $"8002 0000 7FFC 0000 4004 0000 7FFC",
97                 /* [2] */
98                 $"0000 3FFE 0000 7FFF 0000 7FFF 0000 7FFF"
99                 $"0000 7FFF 0000 7FFF 0000 7FFF 0000 7FFF"
100                 $"0000 7FFF 0000 7FFF 0000 7FFF 0000 7FFF"
101                 $"0000 7FFF 7FFC 7FFF FFFE 7FFF FFFE 7FFF"
102                 $"FFFE 3FFE FFFE 3FFE FFFE 3FFE FFFE 0000"
103                 $"FFFE 0000 FFFE 0000 FFFE 0000 FFFE 0000"
104                 $"FFFE 0000 FFFE 0000 FFFE 0000 FFFE 0000"
105                 $"FFFE 0000 7FFC 0000 7FFC 0000 7FFC"
106         }
107 };
108
109 resource 'ics#' (128, purgeable) {
110         {       /* array: 2 elements */
111                 /* [1] */
112                 $"00FF 0081 00BD 00A5 00A5 00BD FF81 818D"
113                 $"BD81 A57E A500 BD00 8100 8D00 8100 7E",
114                 /* [2] */
115                 $"00FF 00FF 00FF 00FF 00FF 00FF FFFF FFFF"
116                 $"FFFF FF7E FF00 FF00 FF00 FF00 FF00 7E"
117         }
118 };
119
120 /* Known hosts icon */
121 resource 'ICN#' (130, purgeable) {
122         {       /* array: 2 elements */
123                 /* [1] */
124                 $"1FFF FC00 1000 0600 1000 0500 1FFF FC80"
125                 $"1000 0440 1000 0420 1FFF FFF0 1000 0010"
126                 $"13FC 0F90 1C03 F0F0 15FA 8090 150A 8090"
127                 $"1D0B 80F0 150A 8050 15FA 8050 1C03 8070"
128                 $"143A 8050 1402 8050 1FFF ABF0 1204 8110"
129                 $"13FC FF10 1AAA AAB0 1000 0010 17FF FFD0"
130                 $"1400 0050 1525 2250 1555 5550 1525 2250"
131                 $"1400 0050 17FF FFD0 1000 0010 1FFF FFF0",
132                 /* [2] */
133                 $"1FFF FC00 1FFF FE00 1FFF FF00 1FFF FF80"
134                 $"1FFF FFC0 1FFF FFE0 1FFF FFF0 1FFF FFF0"
135                 $"1FFF FFF0 1FFF FFF0 1FFF FFF0 1FFF FFF0"
136                 $"1FFF FFF0 1FFF FFF0 1FFF FFF0 1FFF FFF0"
137                 $"1FFF FFF0 1FFF FFF0 1FFF FFF0 1FFF FFF0"
138                 $"1FFF FFF0 1FFF FFF0 1FFF FFF0 1FFF FFF0"
139                 $"1FFF FFF0 1FFF FFF0 1FFF FFF0 1FFF FFF0"
140                 $"1FFF FFF0 1FFF FFF0 1FFF FFF0 1FFF FFF0"
141         }
142 };
143 resource 'icl4' (130, purgeable) {
144         $"000F FFFF FFFF FFFF FFFF FF00 0000 0000"
145         $"000F 0000 0000 0000 0000 0FF0 0000 0000"
146         $"000F 0000 0000 0000 0000 0FCF 0000 0000"
147         $"000F FFFF FFFF FFFF FFFF FFCC F000 0000"
148         $"000F 0000 0000 0000 0000 0FCC CF00 0000"
149         $"000F 0000 0000 0000 0000 0FCC CCF0 0000"
150         $"000F FFFF FFFF FFFF FFFF FFFF FFFF 0000"
151         $"000F 0000 0000 0000 0000 0000 000F 0000"
152         $"000F 00FF FFFF FF00 0000 FFFF F00F 0000"
153         $"000F FFCC CCCC CCFF FFFF CCCC FFFF 0000"
154         $"000F 0FCE EEEE CCF0 FCCC CCCC F00F 0000"
155         $"000F 0FCE 0D0D 0CF0 FCCC CCCC F00F 0000"
156         $"000F FFCE D0D0 CCFF FCCC CCCC FFFF 0000"
157         $"000F 0FCE 0D0D 0CF0 FCCC CCCC CF0F 0000"
158         $"000F 0FCC C0C0 CCF0 FCCC CCCC CF0F 0000"
159         $"000F FFCC CCCC CCFF FCCC CCCC CFFF 0000"
160         $"000F 0FCC CCFF FCF0 FCCC CCCC CF0F 0000"
161         $"000F 0FCC CCCC CCF0 FCCC CCCC CF0F 0000"
162         $"000F FFFF FFFF FFFF FDDD DDDF FFFF 0000"
163         $"000F 00FC CDDE EF00 FDDD DDDF 000F 0000"
164         $"000F 00FF FFFF FF00 FFFF FFFF 000F 0000"
165         $"000F 0C0C 0C0C 0C0C 0C0C 0C0C 0C0F 0000"
166         $"000F C0C0 C0C0 C0C0 C0C0 C0C0 C0CF 0000"
167         $"000F 0FFF FFFF FFFF FFFF FFFF FF0F 0000"
168         $"000F CF00 0000 0000 0000 0000 0FCF 0000"
169         $"000F 0F0F 00F0 0F0F 00F0 00F0 0F0F 0000"
170         $"000F CF0F 0F0F 0F0F 0F0F 0F0F 0FCF 0000"
171         $"000F 0F0F 00F0 0F0F 00F0 00F0 0F0F 0000"
172         $"000F CF00 0000 0000 0000 0000 0FCF 0000"
173         $"000F 0FFF FFFF FFFF FFFF FFFF FF0F 0000"
174         $"000F C0C0 C0C0 C0C0 C0C0 C0C0 C0CF 0000"
175         $"000F FFFF FFFF FFFF FFFF FFFF FFFF"
176 };
177 resource 'icl8' (130, purgeable) {
178         $"0000 00FF FFFF FFFF FFFF FFFF FFFF FFFF"
179         $"FFFF FFFF FFFF 0000 0000 0000 0000 0000"
180         $"0000 00FF 0000 0000 0000 0000 0000 0000"
181         $"0000 0000 00FF FF00 0000 0000 0000 0000"
182         $"0000 00FF 0000 0000 0000 0000 0000 0000"
183         $"0000 0000 00FF F6FF 0000 0000 0000 0000"
184         $"0000 00FF FFFF FFFF FFFF FFFF FFFF FFFF"
185         $"FFFF FFFF FFFF F6F6 FF00 0000 0000 0000"
186         $"0000 00FF 0000 0000 0000 0000 0000 0000"
187         $"0000 0000 00FF F6F6 F6FF 0000 0000 0000"
188         $"0000 00FF 0000 0000 0000 0000 0000 0000"
189         $"0000 0000 00FF F6F6 F6F6 FF00 0000 0000"
190         $"0000 00FF FFFF FFFF FFFF FFFF FFFF FFFF"
191         $"FFFF FFFF FFFF FFFF FFFF FFFF 0000 0000"
192         $"0000 00FF 0000 0000 0000 0000 0000 0000"
193         $"0000 0000 0000 0000 0000 00FF 0000 0000"
194         $"0000 00FF 0000 FFFF FFFF FFFF FFFF 0000"
195         $"0000 0000 FFFF FFFF FF00 00FF 0000 0000"
196         $"0000 00FF FFFF 2B2B 2B2B 2B2B 2B2B FFFF"
197         $"FFFF FFFF 2B2B 2B2B FFFF FFFF 0000 0000"
198         $"0000 00FF 00FF 2BFC FCFC FCFC F82B FF00"
199         $"FF2B 2B2B 2B2B 2B2B FF00 00FF 0000 0000"
200         $"0000 00FF 00FF 2BFC 2A2A 2A2A 002B FF00"
201         $"FF2B 2B2B 2B2B 2B2B FF00 00FF 0000 0000"
202         $"0000 00FF FFFF 2BFC 2A2A 2A2A 002B FFFF"
203         $"FF2B 2B2B 2B2B 2B2B FFFF FFFF 0000 0000"
204         $"0000 00FF 00FF 2BFC 2A2A 2A2A 002B FF00"
205         $"FF2B 2B2B 2B2B 2B2B 2BFF 00FF 0000 0000"
206         $"0000 00FF 00FF 2BF8 0000 0000 002B FF00"
207         $"FF2B 2B2B 2B2B 2B2B 2BFF 00FF 0000 0000"
208         $"0000 00FF FFFF 2B2B 2B2B 2B2B 2B2B FFFF"
209         $"FF2B 2B2B 2B2B 2B2B 2BFF FFFF 0000 0000"
210         $"0000 00FF 00FF 2B2B 2B2B FFFF FF2B FF00"
211         $"FF2B 2B2B 2B2B 2B2B 2BFF 00FF 0000 0000"
212         $"0000 00FF 00FF 2B2B 2B2B 2B2B 2B2B FF00"
213         $"FF2B 2B2B 2B2B 2B2B 2BFF 00FF 0000 0000"
214         $"0000 00FF FFFF FFFF FFFF FFFF FFFF FFFF"
215         $"FFF9 F9F9 F9F9 F9FF FFFF FFFF 0000 0000"
216         $"0000 00FF 0000 FFF7 F8F9 FAFB FCFF 0000"
217         $"FFF9 F9F9 F9F9 F9FF 0000 00FF 0000 0000"
218         $"0000 00FF 0000 FFFF FFFF FFFF FFFF 0000"
219         $"FFFF FFFF FFFF FFFF 0000 00FF 0000 0000"
220         $"0000 00FF F5F5 F5F5 F5F5 F5F5 F5F5 F5F5"
221         $"F5F5 F5F5 F5F5 F5F5 F5F5 F5FF 0000 0000"
222         $"0000 00FF F5F5 F5F5 F5F5 F5F5 F5F5 F5F5"
223         $"F5F5 F5F5 F5F5 F5F5 F5F5 F5FF 0000 0000"
224         $"0000 00FF F5FF FFFF FFFF FFFF FFFF FFFF"
225         $"FFFF FFFF FFFF FFFF FFFF F5FF 0000 0000"
226         $"0000 00FF F5FF 0000 0000 0000 0000 0000"
227         $"0000 0000 0000 0000 00FF F5FF 0000 0000"
228         $"0000 00FF F5FF 00FF 0000 FF00 00FF 00FF"
229         $"0000 FF00 0000 FF00 00FF F5FF 0000 0000"
230         $"0000 00FF F5FF 00FF 00FF 00FF 00FF 00FF"
231         $"00FF 00FF 00FF 00FF 00FF F5FF 0000 0000"
232         $"0000 00FF F5FF 00FF 0000 FF00 00FF 00FF"
233         $"0000 FF00 0000 FF00 00FF F5FF 0000 0000"
234         $"0000 00FF F5FF 0000 0000 0000 0000 0000"
235         $"0000 0000 0000 0000 00FF F5FF 0000 0000"
236         $"0000 00FF F5FF FFFF FFFF FFFF FFFF FFFF"
237         $"FFFF FFFF FFFF FFFF FFFF F5FF 0000 0000"
238         $"0000 00FF F5F5 F5F5 F5F5 F5F5 F5F5 F5F5"
239         $"F5F5 F5F5 F5F5 F5F5 F5F5 F5FF 0000 0000"
240         $"0000 00FF FFFF FFFF FFFF FFFF FFFF FFFF"
241         $"FFFF FFFF FFFF FFFF FFFF FFFF"
242 };
243
244
245 /*
246  * Internal resources
247  */
248
249 /* Menu bar */
250
251 resource 'MBAR' (MBAR_Main, preload) {
252     { mApple, mFile }
253 };
254
255 resource 'MENU' (mApple, preload) {
256     mApple,
257     textMenuProc,
258     0b11111111111111111111111111111101,
259     enabled,
260     apple,
261     {
262         "About PuTTYÉ",         noicon, nokey, nomark, plain,
263         "-",                    noicon, nokey, nomark, plain,
264     }
265 };
266
267 resource 'MENU' (mFile, preload) {
268     mFile,
269     textMenuProc,
270     0b11111111111111111111111111111101,
271     enabled,
272     "File",
273     {
274         "New Session"           noicon, "N",   nomark, plain,
275         "Close",                noicon, "W",   nomark, plain,
276         "-",                    noicon, nokey, nomark, plain,
277         "Quit",                 noicon, "Q",   nomark, plain,
278     }
279 };
280
281 /* Fatal error box.  Stolen from the Finder. */
282
283 resource 'ALRT' (wFatal, "fatalbox", purgeable) {
284         {54, 67, 152, 435},
285         wFatal,
286         beepStages,
287         alertPositionMainScreen
288 };
289
290 resource 'DITL' (wFatal, "fatalbox", purgeable) {
291         {       /* array DITLarray: 3 elements */
292                 /* [1] */
293                 {68, 299, 88, 358},
294                 Button {
295                         enabled,
296                         "OK"
297                 },
298                 /* [2] */
299                 {68, 227, 88, 286},
300                 StaticText {
301                         disabled,
302                         ""
303                 },
304                 /* [3] */
305                 {7, 74, 55, 358},
306                 StaticText {
307                         disabled,
308                         "^0"
309                 }
310         }
311 };
312
313 /* Terminal window */
314
315 resource 'WIND' (wTerminal, "terminal", purgeable) {
316     { 0, 0, 0, 0 },
317     zoomDocProc,
318     invisible,
319     goAway,
320     0x0,
321     "untitled"
322     staggerParentWindowScreen
323 };
324
325 /* "About" box */
326
327 resource 'DLOG' (wAbout, "about", purgeable) {
328     { 0, 0, 120, 186 },
329     noGrowDocProc,
330     visible,
331     goAway,
332     wAbout,             /* RefCon -- identifies the window to PuTTY */
333     wAbout,             /* DITL ID */
334     "About PuTTY",
335     alertPositionMainScreen
336 };
337
338 resource 'DITL' (wAbout, "about", purgeable) {
339     {
340         { 87, 116, 107, 173 },
341         Button { enabled, "Close" },
342         { 87, 13, 107, 103 },
343         Button { enabled, "View Licence" },
344         { 13, 13, 29, 173 },
345         StaticText { disabled, "PuTTY"},
346         { 42, 13, 74, 173 },
347         StaticText { disabled, "Mac Development\n© 1997-9 Simon Tatham"},
348     }
349 };
350
351 /* Licence box */
352
353 resource 'DLOG' (wLicence, "licence", purgeable) {
354     { 0, 0, 300, 300 },
355     noGrowDocProc,
356     visible,
357     goAway,
358     wLicence,
359     wLicence,
360     "PuTTY Licence",
361     alertPositionParentWindowScreen
362 };
363
364 type 'TEXT' {
365     string;
366 };
367
368 resource 'TEXT' (wLicence, "licence", purgeable) {
369     "Copyright © 1997-9 Simon Tatham\n"
370     "Portions copyright Gary S. Brown and Eric Young\n\n"
371     
372     "Permission is hereby granted, free of charge, to any person "
373     "obtaining a copy of this software and associated documentation "
374     "files (the \"Software\"), to deal in the Software without "
375     "restriction, including without limitation the rights to use, "
376     "copy, modify, merge, publish, distribute, sublicense, and/or "
377     "sell copies of the Software, and to permit persons to whom the "
378     "Software is furnished to do so, subject to the following "
379     "conditions:\n\n"
380     
381     "The above copyright notice and this permission notice shall be "
382     "included in all copies or substantial portions of the Software.\n\n"
383     
384     "THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, "
385     "EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF "
386     "MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND "
387     "NONINFRINGEMENT.  IN NO EVENT SHALL SIMON TATHAM BE LIABLE FOR "
388     "ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF "
389     "CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN "
390     "CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE "
391     "SOFTWARE."
392 };
393
394 #if 0
395 resource 'DITL' (wLicence, "licence", purgeable) {
396     {
397         { 13, 23, 287, 277 },
398         Picture { enabled, wLicence }
399     }
400 };
401
402 resource 'PICT' (wLicence, "licence", purgeable) {
403     { 0, 0, 274, 254 },
404      VersionTwo {
405         {
406             LongText { { 16, 0 }, "Copyright © 1997-9 Simon Tatham" },
407             LongText { { 32, 0 }, "Portions copyright Gary S. Brown and Eric Young" },
408         }
409     }
410 };
411 #endif