Commit 0c5626b72dd43f8c1236dd7b53216c4e24fb9eb8

Authored by perry.werneck@gmail.com
1 parent cb42924a

Tradução para pt-br, limpeza de códigos não usados

1 msgid "" 1 msgid ""
2 msgstr "" 2 msgstr ""
3 "Project-Id-Version: pw3270 5.0\n" 3 "Project-Id-Version: pw3270 5.0\n"
4 -"POT-Creation-Date: \n" 4 +"Report-Msgid-Bugs-To: \n"
  5 +"POT-Creation-Date: 2012-05-03 16:30-0300\n"
5 "PO-Revision-Date: \n" 6 "PO-Revision-Date: \n"
6 "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n" 7 "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n"
7 "Language-Team: \n" 8 "Language-Team: \n"
  9 +"Language: \n"
8 "MIME-Version: 1.0\n" 10 "MIME-Version: 1.0\n"
9 -"Content-Type: text/plain; charset=utf-8\n" 11 +"Content-Type: text/plain; charset=UTF-8\n"
10 "Content-Transfer-Encoding: 8bit\n" 12 "Content-Transfer-Encoding: 8bit\n"
11 "X-Poedit-Language: Portuguese\n" 13 "X-Poedit-Language: Portuguese\n"
12 "X-Poedit-Country: BRAZIL\n" 14 "X-Poedit-Country: BRAZIL\n"
@@ -634,9 +636,10 @@ msgid &quot;&quot; @@ -634,9 +636,10 @@ msgid &quot;&quot;
634 "You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA" 636 "You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA"
635 msgstr "" 637 msgstr ""
636 638
637 -#: host.c:304  
638 -msgid "This version of "  
639 -msgstr "Esta versão de" 639 +#: host.c:303
  640 +#, c-format
  641 +msgid "This version of %s was built without support for secure sockets layer (SSL)."
  642 +msgstr ""
640 643
641 #: ft_cut.c:347 644 #: ft_cut.c:347
642 msgid "Transfer cancelled by host" 645 msgid "Transfer cancelled by host"
@@ -851,14 +854,14 @@ msgstr &quot;&quot; @@ -851,14 +854,14 @@ msgstr &quot;&quot;
851 #: telnet.c:3196 854 #: telnet.c:3196
852 #, c-format 855 #, c-format
853 msgid "ioctl(%s)" 856 msgid "ioctl(%s)"
854 -msgstr "" 857 +msgstr "ioctl(%s)"
855 858
856 #: telnet.c:584 859 #: telnet.c:584
857 #: telnet.c:590 860 #: telnet.c:590
858 #: telnet.c:597 861 #: telnet.c:597
859 #, c-format 862 #, c-format
860 msgid "setsockopt(%s)" 863 msgid "setsockopt(%s)"
861 -msgstr "" 864 +msgstr "setsockopt(%s)"
862 865
863 #: telnet.c:577 866 #: telnet.c:577
864 msgid "socket" 867 msgid "socket"
@@ -868,3 +871,5 @@ msgstr &quot;socket&quot; @@ -868,3 +871,5 @@ msgstr &quot;socket&quot;
868 msgid "translator-credits" 871 msgid "translator-credits"
869 msgstr "" 872 msgstr ""
870 873
  874 +#~ msgid "This version of "
  875 +#~ msgstr "Esta versão de"
@@ -237,13 +237,7 @@ @@ -237,13 +237,7 @@
237 <Option compilerVar="CC" /> 237 <Option compilerVar="CC" />
238 </Unit> 238 </Unit>
239 <Unit filename="src/lib3270/popupsc.h" /> 239 <Unit filename="src/lib3270/popupsc.h" />
240 - <Unit filename="src/lib3270/print.c">  
241 - <Option compilerVar="CC" />  
242 - </Unit>  
243 <Unit filename="src/lib3270/printc.h" /> 240 <Unit filename="src/lib3270/printc.h" />
244 - <Unit filename="src/lib3270/printer.c">  
245 - <Option compilerVar="CC" />  
246 - </Unit>  
247 <Unit filename="src/lib3270/printerc.h" /> 241 <Unit filename="src/lib3270/printerc.h" />
248 <Unit filename="src/lib3270/proxy.c"> 242 <Unit filename="src/lib3270/proxy.c">
249 <Option compilerVar="CC" /> 243 <Option compilerVar="CC" />
src/lib3270/Makefile.in
@@ -103,7 +103,7 @@ $(TMPDIR)/pot/%.pot: %.c @@ -103,7 +103,7 @@ $(TMPDIR)/pot/%.pot: %.c
103 103
104 SOURCES = XtGlue.c init.c actions.c ansi.c charset.c ctlr.c \ 104 SOURCES = XtGlue.c init.c actions.c ansi.c charset.c ctlr.c \
105 ft.c ft_cut.c ft_dft.c glue.c host.c kybd.c \ 105 ft.c ft_cut.c ft_dft.c glue.c host.c kybd.c \
106 - print.c printer.c proxy.c resources.c rpq.c screen.c see.c \ 106 + proxy.c resources.c rpq.c screen.c see.c \
107 sf.c tables.c telnet.c toggles.c trace_ds.c utf8.c util.c \ 107 sf.c tables.c telnet.c toggles.c trace_ds.c utf8.c util.c \
108 xio.c resolver.c log.c paste.c macros.c fallbacks.c version.c \ 108 xio.c resolver.c log.c paste.c macros.c fallbacks.c version.c \
109 selection.c bounds.c 109 selection.c bounds.c
src/lib3270/charset.c
@@ -101,7 +101,7 @@ static enum cs_result check_charset(void); @@ -101,7 +101,7 @@ static enum cs_result check_charset(void);
101 static char *char_if_ascii7(unsigned long l); 101 static char *char_if_ascii7(unsigned long l);
102 #endif /*]*/ 102 #endif /*]*/
103 103
104 -static void set_cgcsgids(char *spec); 104 +static void set_cgcsgids(const char *spec);
105 static int set_cgcsgid(char *spec, unsigned long *idp); 105 static int set_cgcsgid(char *spec, unsigned long *idp);
106 106
107 // static void set_charset_name(char *csname); 107 // static void set_charset_name(char *csname);
@@ -159,7 +159,7 @@ restore_charset(void) @@ -159,7 +159,7 @@ restore_charset(void)
159 } 159 }
160 160
161 /* Get a character set definition. */ 161 /* Get a character set definition. */
162 -static char * get_charset_def(const char *csname) 162 +static const char * get_charset_def(const char *csname)
163 { 163 {
164 return get_fresource("%s.%s", ResCharset, csname); 164 return get_fresource("%s.%s", ResCharset, csname);
165 } 165 }
@@ -193,7 +193,8 @@ wide_resource_init(char *csname) @@ -193,7 +193,8 @@ wide_resource_init(char *csname)
193 */ 193 */
194 enum cs_result charset_init(H3270 *session, char *csname) 194 enum cs_result charset_init(H3270 *session, char *csname)
195 { 195 {
196 - char *cs, *ftcs; 196 + const char *cs;
  197 + const char *ftcs;
197 enum cs_result rc; 198 enum cs_result rc;
198 char *ccs, *cftcs; 199 char *ccs, *cftcs;
199 /* 200 /*
@@ -201,7 +202,7 @@ enum cs_result charset_init(H3270 *session, char *csname) @@ -201,7 +202,7 @@ enum cs_result charset_init(H3270 *session, char *csname)
201 char *xks; 202 char *xks;
202 #endif 203 #endif
203 */ 204 */
204 - char *ak; 205 + const char *ak;
205 206
206 /* 207 /*
207 #if !defined(_WIN32) 208 #if !defined(_WIN32)
@@ -317,8 +318,7 @@ set_cgcsgid(char *spec, unsigned long *r) @@ -317,8 +318,7 @@ set_cgcsgid(char *spec, unsigned long *r)
317 } 318 }
318 319
319 /* Set the CGCSGIDs. */ 320 /* Set the CGCSGIDs. */
320 -static void  
321 -set_cgcsgids(char *spec) 321 +static void set_cgcsgids(const char *spec)
322 { 322 {
323 int n_ids = 0; 323 int n_ids = 0;
324 char *spec_copy; 324 char *spec_copy;
@@ -386,9 +386,9 @@ static enum cs_result resource_charset(char *csname, char *cs, char *ftcs) @@ -386,9 +386,9 @@ static enum cs_result resource_charset(char *csname, char *cs, char *ftcs)
386 { 386 {
387 enum cs_result rc; 387 enum cs_result rc;
388 int ne = 0; 388 int ne = 0;
389 - char *rcs = CN; 389 + const char *rcs = CN;
390 int n_rcs = 0; 390 int n_rcs = 0;
391 - char *dcs; 391 + const char *dcs;
392 392
393 /* Interpret the spec. */ 393 /* Interpret the spec. */
394 rc = remap_chars(csname, cs, (ftcs == NULL)? BOTH: CS_ONLY, &ne); 394 rc = remap_chars(csname, cs, (ftcs == NULL)? BOTH: CS_ONLY, &ne);
@@ -737,7 +737,7 @@ check_charset(void) @@ -737,7 +737,7 @@ check_charset(void)
737 } 737 }
738 #endif /*]*/ 738 #endif /*]*/
739 739
740 -void set_display_charset(H3270 *session, char *dcs) 740 +void set_display_charset(H3270 *session, const char *dcs)
741 { 741 {
742 session->charset = strdup(dcs); 742 session->charset = strdup(dcs);
743 } 743 }
src/lib3270/charsetc.h
@@ -38,5 +38,5 @@ enum cs_result { CS_OKAY, CS_NOTFOUND, CS_BAD, CS_PREREQ, CS_ILLEGAL }; @@ -38,5 +38,5 @@ enum cs_result { CS_OKAY, CS_NOTFOUND, CS_BAD, CS_PREREQ, CS_ILLEGAL };
38 LIB3270_INTERNAL enum cs_result charset_init(H3270 *session, char *csname); 38 LIB3270_INTERNAL enum cs_result charset_init(H3270 *session, char *csname);
39 // LIB3270_INTERNAL char *get_charset_name(void); 39 // LIB3270_INTERNAL char *get_charset_name(void);
40 40
41 -LIB3270_INTERNAL void set_display_charset(H3270 *session, char *dcs); 41 +LIB3270_INTERNAL void set_display_charset(H3270 *session, const char *dcs);
42 42
src/lib3270/ft_dft.c
@@ -162,7 +162,7 @@ dft_open_request(unsigned short len, unsigned char *cp) @@ -162,7 +162,7 @@ dft_open_request(unsigned short len, unsigned char *cp)
162 GET16(recsz, recszp); 162 GET16(recsz, recszp);
163 name = (char *)cp + 31; 163 name = (char *)cp + 31;
164 } else { 164 } else {
165 - dft_abort( _("ftDftUknownOpen"), TR_OPEN_REQ); 165 + dft_abort( _("Uknown DFT Open type from host"), TR_OPEN_REQ);
166 return; 166 return;
167 } 167 }
168 168
@@ -307,8 +307,7 @@ dft_data_insert(struct data_buffer *data_bufr) @@ -307,8 +307,7 @@ dft_data_insert(struct data_buffer *data_bufr)
307 /* write failed */ 307 /* write failed */
308 char *buf; 308 char *buf;
309 309
310 - buf = xs_buffer("write(%s): %s", ft_local_filename,  
311 - strerror(errno)); 310 + buf = xs_buffer( _( "write(%s): %s" ), ft_local_filename,strerror(errno));
312 311
313 dft_abort(buf, TR_DATA_INSERT); 312 dft_abort(buf, TR_DATA_INSERT);
314 Free(buf); 313 Free(buf);
src/lib3270/init.c
@@ -232,10 +232,11 @@ H3270 * lib3270_session_new(const char *model) @@ -232,10 +232,11 @@ H3270 * lib3270_session_new(const char *model)
232 ft_init(); 232 ft_init();
233 #endif 233 #endif
234 234
  235 +/*
235 #if defined(X3270_PRINTER) 236 #if defined(X3270_PRINTER)
236 printer_init(); 237 printer_init();
237 #endif 238 #endif
238 - 239 +*/
239 Trace("%s finished",__FUNCTION__); 240 Trace("%s finished",__FUNCTION__);
240 241
241 errno = 0; 242 errno = 0;
src/lib3270/print.c
@@ -36,722 +36,3 @@ @@ -36,722 +36,3 @@
36 */ 36 */
37 37
38 #include "globals.h" 38 #include "globals.h"
39 -  
40 -#include "appres.h"  
41 -#include "3270ds.h"  
42 -// #include "ctlr.h"  
43 -  
44 -#include "ctlrc.h"  
45 -#include "tablesc.h"  
46 -  
47 -#include <errno.h>  
48 -  
49 -#if defined(X3270_DISPLAY) /*[*/  
50 -#include <X11/StringDefs.h>  
51 -#include <X11/Xaw/Dialog.h>  
52 -#endif /*]*/  
53 -  
54 -#include "objects.h"  
55 -#include "resources.h"  
56 -  
57 -#include "actionsc.h"  
58 -#include "popupsc.h"  
59 -#include "printc.h"  
60 -#include "utf8c.h"  
61 -#include "utilc.h"  
62 -#if defined(X3270_DBCS) /*[*/  
63 -#include "widec.h"  
64 -#endif /*]*/  
65 -#if defined(_WIN32) /*[*/  
66 -#include <io.h>  
67 -#include <fcntl.h>  
68 -#include <sys/stat.h>  
69 -#endif /*]*/  
70 -  
71 -#include "api.h"  
72 -  
73 -/* Statics */  
74 -  
75 -/*  
76 -#if defined(X3270_DISPLAY)  
77 -static Widget print_text_shell = (Widget)NULL;  
78 -static Widget save_text_shell = (Widget)NULL;  
79 -static Widget print_window_shell = (Widget)NULL;  
80 -static char *print_window_command = CN;  
81 -#endif  
82 -*/  
83 -  
84 -/* Print Text popup */  
85 -  
86 -/*  
87 - * Map default 3279 colors. This code is duplicated three times. ;-(  
88 - */ /*  
89 -static int  
90 -color_from_fa(unsigned char fa)  
91 -{  
92 - static int field_colors[4] = {  
93 - COLOR_GREEN, // default  
94 - COLOR_RED, // intensified  
95 - COLOR_BLUE, // protected  
96 - COLOR_WHITE // protected, intensified  
97 -# define DEFCOLOR_MAP(f) \  
98 - ((((f) & FA_PROTECT) >> 4) | (((f) & FA_INT_HIGH_SEL) >> 3))  
99 - };  
100 -  
101 - if (appres.m3279)  
102 - return field_colors[DEFCOLOR_MAP(fa)];  
103 - else  
104 - return COLOR_GREEN;  
105 -}  
106 -*/  
107 -/*  
108 - * Map 3279 colors onto HTML colors.  
109 - */ /*  
110 -static char *  
111 -html_color(int color)  
112 -{  
113 - static char *html_color_map[] = {  
114 - "black",  
115 - "deepSkyBlue",  
116 - "red",  
117 - "pink",  
118 - "green",  
119 - "turquoise",  
120 - "yellow",  
121 - "white",  
122 - "black",  
123 - "blue3",  
124 - "orange",  
125 - "purple",  
126 - "paleGreen",  
127 - "paleTurquoise2",  
128 - "grey",  
129 - "white"  
130 - };  
131 - if (color >= COLOR_NEUTRAL_BLACK && color <= COLOR_WHITE)  
132 - return html_color_map[color];  
133 - else  
134 - return "black";  
135 -}  
136 -*/  
137 -  
138 -/*  
139 - * Print the ASCIIfied contents of the screen onto a stream.  
140 - * Returns True if anything printed, False otherwise.  
141 - *  
142 - * If 'use_html' is True, then HTML is generated, which preserves colors, but  
143 - * little else (for now).  
144 - */  
145 -Boolean  
146 -fprint_screen(FILE *f, Boolean even_if_empty, Boolean use_html)  
147 -{  
148 - return False;  
149 -  
150 -/*  
151 - register int i;  
152 - char c;  
153 - int ns = 0;  
154 - int nr = 0;  
155 - Boolean any = False;  
156 - int fa_addr = find_field_attribute(&h3270,0);  
157 - unsigned char fa = h3270.ea_buf[fa_addr].fa;  
158 - int fa_color, current_color;  
159 - Bool fa_high, current_high;  
160 -  
161 - if (use_html) {  
162 - even_if_empty = True;  
163 - }  
164 -  
165 - if (h3270.ea_buf[fa_addr].fg)  
166 - fa_color = h3270.ea_buf[fa_addr].fg & 0x0f;  
167 - else  
168 - fa_color = color_from_fa(fa);  
169 - current_color = fa_color;  
170 -  
171 - if (h3270.ea_buf[fa_addr].gr & GR_INTENSIFY)  
172 - fa_high = True;  
173 - else  
174 - fa_high = FA_IS_HIGH(fa);  
175 - current_high = fa_high;  
176 -  
177 - for (i = 0; i < h3270.rows*h3270.cols; i++) {  
178 -#if defined(X3270_DBCS)  
179 - char mb[16];  
180 - Boolean is_dbcs = False;  
181 -#endif  
182 -  
183 - if (i && !(i % h3270.cols)) {  
184 - nr++;  
185 - ns = 0;  
186 - }  
187 - if (h3270.ea_buf[i].fa) {  
188 - c = ' ';  
189 - fa = h3270.ea_buf[i].fa;  
190 - if (h3270.ea_buf[i].fg)  
191 - fa_color = h3270.ea_buf[i].fg & 0x0f;  
192 - else  
193 - fa_color = color_from_fa(fa);  
194 - if (h3270.ea_buf[i].gr & GR_INTENSIFY)  
195 - fa_high = True;  
196 - else  
197 - fa_high = FA_IS_HIGH(fa);  
198 - }  
199 - if (FA_IS_ZERO(fa))  
200 - c = ' ';  
201 -#if defined(X3270_DBCS)  
202 - else {  
203 - // XXX: DBCS/html interactions are not done  
204 - switch (ctlr_dbcs_state(i)) {  
205 - case DBCS_NONE:  
206 - case DBCS_SB:  
207 - c = ebc2asc[ea_buf[i].cc];  
208 - break;  
209 - case DBCS_LEFT:  
210 - dbcs_to_mb(ea_buf[i].cc, ea_buf[i + 1].cc, mb);  
211 - is_dbcs = True;  
212 - c = 'x';  
213 - break;  
214 - default:  
215 - c = ' ';  
216 - break;  
217 - }  
218 - }  
219 -#else  
220 - else  
221 - c = ebc2asc[h3270.ea_buf[i].cc];  
222 -#endif  
223 - if (c == ' ')  
224 - ns++;  
225 - else {  
226 - while (nr) {  
227 - (void) fputc('\n', f);  
228 - nr--;  
229 - }  
230 - while (ns) {  
231 - (void) fputc(' ', f);  
232 - ns--;  
233 - }  
234 - if (use_html) {  
235 - int color;  
236 - Bool high;  
237 -  
238 - if (h3270.ea_buf[i].fg)  
239 - color = h3270.ea_buf[i].fg & 0x0f;  
240 - else  
241 - color = fa_color;  
242 - if (color != current_color) {  
243 - if (any)  
244 - fprintf(f, "</font><font color=%s>",  
245 - html_color(color));  
246 - current_color = color;  
247 - }  
248 - if (h3270.ea_buf[i].gr & GR_INTENSIFY)  
249 - high = True;  
250 - else  
251 - high = fa_high;  
252 - if (high != current_high) {  
253 - if (any) {  
254 - if (high)  
255 - fprintf(f, "<b>");  
256 - else  
257 - fprintf(f, "</b>");  
258 - }  
259 - current_high = high;  
260 - }  
261 - if (!any) {  
262 - fprintf(f, "<html>\n"  
263 - "<head>\n"  
264 - " <meta http-equiv=\"Content-Type\" content=\"text/html; charset=%s\">\n"  
265 - "</head>\n"  
266 - " <body>\n"  
267 - " <table border=0>"  
268 - "<tr bgcolor=black><td>"  
269 - "<pre><font color=%s>%s",  
270 - lib3270_get_charset(&h3270),  
271 - html_color(current_color),  
272 - current_high? "<b>": "");  
273 - }  
274 - }  
275 - any = True;  
276 -#if defined(X3270_DBCS)  
277 - if (is_dbcs) {  
278 - (void) fputs(mb, f);  
279 - i++;  
280 - }  
281 - else  
282 -#endif  
283 - {  
284 - if (use_html && c == '<')  
285 - fprintf(f, "&lt;");  
286 - else  
287 - (void) fputs(utf8_expand(c), f);  
288 - }  
289 - }  
290 - }  
291 - nr++;  
292 - if (!any && !even_if_empty)  
293 - return False;  
294 - while (nr) {  
295 - (void) fputc('\n', f);  
296 - nr--;  
297 - }  
298 - if (use_html && any) {  
299 - fprintf(f, "%s</font></pre></td></tr>\n"  
300 - " </table>\n"  
301 - " </body>\n"  
302 - "</html>\n",  
303 - current_high? "</b>": "");  
304 - }  
305 - return True;  
306 -*/  
307 -}  
308 -  
309 -/* Termination code for print text process. */ /*  
310 -static void  
311 -print_text_done(FILE *f, Boolean do_popdown  
312 -#if defined(X3270_DISPLAY)  
313 - unused  
314 -#endif  
315 - )  
316 -{  
317 - int status;  
318 -  
319 - status = pclose(f);  
320 - if (status) {  
321 - popup_an_error("Print program exited with status %d.",  
322 - (status & 0xff00) > 8);  
323 - } else {  
324 -#if defined(X3270_DISPLAY)  
325 - if (do_popdown)  
326 - XtPopdown(print_text_shell);  
327 - if (appres.do_confirms)  
328 - popup_an_info("Screen image printed.");  
329 -#endif  
330 - }  
331 -  
332 -}  
333 -*/  
334 -  
335 -#if defined(X3270_DISPLAY)  
336 -  
337 -/* Callback for "OK" button on the print text popup. */ /*  
338 -static void  
339 -print_text_callback(Widget w unused, XtPointer client_data,  
340 - XtPointer call_data unused)  
341 -{  
342 - char *filter;  
343 - FILE *f;  
344 -  
345 - filter = XawDialogGetValueString((Widget)client_data);  
346 - if (!filter) {  
347 - XtPopdown(print_text_shell);  
348 - return;  
349 - }  
350 - if (!(f = popen(filter, "w"))) {  
351 - popup_an_errno(errno, "popen(%s)", filter);  
352 - return;  
353 - }  
354 - (void) fprint_screen(f, True, False);  
355 - print_text_done(f, True);  
356 -}  
357 -*/  
358 -/* Callback for "Plain Text" button on save text popup. *//*  
359 -static void  
360 -save_text_plain_callback(Widget w unused, XtPointer client_data,  
361 - XtPointer call_data unused)  
362 -{  
363 - char *filename;  
364 - FILE *f;  
365 -  
366 - filename = XawDialogGetValueString((Widget)client_data);  
367 - if (!filename) {  
368 - XtPopdown(save_text_shell);  
369 - return;  
370 - }  
371 - if (!(f = fopen(filename, "a"))) {  
372 - popup_an_errno(errno, "%s", filename);  
373 - return;  
374 - }  
375 - (void) fprint_screen(f, True, False);  
376 - fclose(f);  
377 - XtPopdown(save_text_shell);  
378 - if (appres.do_confirms)  
379 - popup_an_info("Screen image saved.");  
380 -}  
381 -*/  
382 -/* Callback for "HTML" button on save text popup. */ /*  
383 -static void  
384 -save_text_html_callback(Widget w unused, XtPointer client_data,  
385 - XtPointer call_data unused)  
386 -{  
387 - char *filename;  
388 - FILE *f;  
389 -  
390 - filename = XawDialogGetValueString((Widget)client_data);  
391 - if (!filename) {  
392 - XtPopdown(save_text_shell);  
393 - return;  
394 - }  
395 - if (!(f = fopen(filename, "a"))) {  
396 - popup_an_errno(errno, "%s", filename);  
397 - return;  
398 - }  
399 - (void) fprint_screen(f, True, True);  
400 - fclose(f);  
401 - XtPopdown(save_text_shell);  
402 - if (appres.do_confirms)  
403 - popup_an_info("Screen image saved.");  
404 -}  
405 -*/  
406 -/* Pop up the Print Text dialog, given a filter. */ /*  
407 -static void  
408 -popup_print_text(char *filter)  
409 -{  
410 - if (print_text_shell == NULL) {  
411 - print_text_shell = create_form_popup("PrintText",  
412 - print_text_callback, (XtCallbackProc)NULL,  
413 - FORM_AS_IS);  
414 - XtVaSetValues(XtNameToWidget(print_text_shell, ObjDialog),  
415 - XtNvalue, filter,  
416 - NULL);  
417 - }  
418 - popup_popup(print_text_shell, XtGrabExclusive);  
419 -}  
420 -*/  
421 -/* Pop up the Save Text dialog. */ /*  
422 -static void  
423 -popup_save_text(char *filename)  
424 -{  
425 - if (save_text_shell == NULL) {  
426 - save_text_shell = create_form_popup("SaveText",  
427 - save_text_plain_callback,  
428 - save_text_html_callback,  
429 - FORM_AS_IS);  
430 - }  
431 - if (filename != CN)  
432 - XtVaSetValues(XtNameToWidget(save_text_shell, ObjDialog),  
433 - XtNvalue, filename,  
434 - NULL);  
435 - popup_popup(save_text_shell, XtGrabExclusive);  
436 -}  
437 -*/  
438 -  
439 -#endif  
440 -  
441 -/* Print or save the contents of the screen as text. */ /*  
442 -void  
443 -PrintText_action(Widget w unused, XEvent *event, String *params,  
444 - Cardinal *num_params)  
445 -{  
446 - int i;  
447 - char *filter = CN;  
448 - Boolean secure = appres.secure;  
449 - Boolean use_html = False;  
450 - Boolean use_file = False;  
451 - Boolean use_string = False;  
452 -  
453 - //  
454 - // Pick off optional arguments:  
455 - // file directs the output to a file instead of a command;  
456 - // must be the last keyword  
457 - // html generates HTML output instead of ASCII text (and implies  
458 - // 'file')  
459 - // secure disables the pop-up dialog, if this action is invoked from  
460 - // a keymap  
461 - // command directs the output to a command (this is the default, but  
462 - // allows the command to be one of the other keywords);  
463 - // must be the last keyword  
464 - // string returns the data as a string, allowed only from scripts  
465 - //  
466 - for (i = 0; i < *num_params; i++) {  
467 - if (!strcasecmp(params[i], "file")) {  
468 - use_file = True;  
469 - i++;  
470 - break;  
471 - } else if (!strcasecmp(params[i], "html")) {  
472 - use_html = True;  
473 - use_file = True;  
474 - } else if (!strcasecmp(params[i], "secure")) {  
475 - secure = True;  
476 - } else if (!strcasecmp(params[i], "command")) {  
477 - if (use_html || use_file) {  
478 - popup_an_error("%s: contradictory options",  
479 - action_name(PrintText_action));  
480 - return;  
481 - }  
482 - i++;  
483 - break;  
484 - } else if (!strcasecmp(params[i], "string")) {  
485 - if (ia_cause != IA_SCRIPT) {  
486 - popup_an_error("%s(string) can only be used "  
487 - "from a script",  
488 - action_name(PrintText_action));  
489 - return;  
490 - }  
491 - use_string = True;  
492 - use_file = True;  
493 - } else {  
494 - break;  
495 - }  
496 - }  
497 - switch (*num_params - i) {  
498 - case 0:  
499 - // Use the default.  
500 - if (!use_file)  
501 - filter = get_resource(ResPrintTextCommand);  
502 - break;  
503 - case 1:  
504 - if (use_string) {  
505 - popup_an_error("%s: extra arguments or invalid option(s)",  
506 - action_name(PrintText_action));  
507 - return;  
508 - }  
509 - filter = params[i];  
510 - break;  
511 - default:  
512 - popup_an_error("%s: extra arguments or invalid option(s)",  
513 - action_name(PrintText_action));  
514 - return;  
515 - }  
516 -  
517 - if (filter != CN && filter[0] == '@') {  
518 - //  
519 - // Starting the PrintTextCommand resource value with '@'  
520 - // suppresses the pop-up dialog, as does setting the 'secure'  
521 - // resource.  
522 - //  
523 - secure = True;  
524 - filter++;  
525 - }  
526 - if (!use_file && (filter == CN || !*filter))  
527 - filter = "lpr";  
528 -  
529 -#if defined(X3270_DISPLAY)  
530 - if (secure ||  
531 - ia_cause == IA_COMMAND ||  
532 - ia_cause == IA_MACRO ||  
533 - ia_cause == IA_SCRIPT)  
534 -#endif  
535 - {  
536 - FILE *f;  
537 - int fd = -1;  
538 -  
539 - // Invoked non-interactively.  
540 - if (use_file) {  
541 - if (use_string) {  
542 - char temp_name[15];  
543 -  
544 -#if defined(_WIN32)  
545 - strcpy(temp_name, "x3hXXXXXX");  
546 - mktemp(temp_name);  
547 - fd = _open(temp_name, _O_RDWR,  
548 - _S_IREAD | _S_IWRITE);  
549 -#else  
550 - strcpy(temp_name, "/tmp/x3hXXXXXX");  
551 - fd = mkstemp(temp_name);  
552 -#endif  
553 - if (fd < 0) {  
554 - popup_an_errno(errno, "mkstemp");  
555 - return;  
556 - }  
557 - (void) unlink(temp_name);  
558 - f = fdopen(fd, "w+");  
559 - } else {  
560 - if (filter == CN || !*filter) {  
561 - popup_an_error("%s: missing filename",  
562 - action_name(PrintText_action));  
563 - return;  
564 - }  
565 - f = fopen(filter, "a");  
566 - }  
567 - } else  
568 - f = popen(filter, "w");  
569 - if (f == NULL) {  
570 - popup_an_errno(errno, "%s: %s",  
571 - action_name(PrintText_action),  
572 - filter);  
573 - if (fd >= 0) {  
574 - (void) close(fd);  
575 - }  
576 - return;  
577 - }  
578 - (void) fprint_screen(f, True, use_html);  
579 - if (use_string) {  
580 - char buf[8192];  
581 -  
582 - rewind(f);  
583 - while (fgets(buf, sizeof(buf), f) != NULL)  
584 - action_output(buf);  
585 - }  
586 - if (use_file)  
587 - fclose(f);  
588 - else  
589 - print_text_done(f, False);  
590 - return;  
591 - }  
592 -  
593 -#if defined(X3270_DISPLAY)  
594 - // Invoked interactively -- pop up the confirmation dialog.  
595 - if (use_file) {  
596 - popup_save_text(filter);  
597 - } else {  
598 - popup_print_text(filter);  
599 - }  
600 -#endif  
601 -}  
602 -*/  
603 -  
604 -#if defined(X3270_DISPLAY) /*[*/  
605 -#if defined(X3270_MENUS) /*[*/  
606 -  
607 -  
608 -/* Callback for Print Text menu option. */ /*  
609 -void  
610 -print_text_option(Widget w, XtPointer client_data unused,  
611 - XtPointer call_data unused)  
612 -{  
613 - char *filter = get_resource(ResPrintTextCommand);  
614 - Boolean secure = appres.secure;  
615 - Boolean use_html = False;  
616 -  
617 - // Decode the filter.  
618 - if (filter != CN && *filter == '@') {  
619 - secure = True;  
620 - filter++;  
621 - }  
622 - if (filter == CN || !*filter)  
623 - filter = "lpr";  
624 -  
625 - if (secure) {  
626 - FILE *f;  
627 -  
628 - // Print the screen without confirming.  
629 - if (!(f = popen(filter, "w"))) {  
630 - popup_an_errno(errno, "popen(%s)", filter);  
631 - return;  
632 - }  
633 - (void) fprint_screen(f, True, use_html);  
634 - print_text_done(f, False);  
635 - } else {  
636 - // Pop up a dialog to confirm or modify their choice.  
637 - popup_print_text(filter);  
638 - }  
639 -}  
640 -*/  
641 -  
642 -/* Callback for Save Text menu option. */ /*  
643 -void  
644 -save_text_option(Widget w, XtPointer client_data unused,  
645 - XtPointer call_data unused)  
646 -{  
647 - // Pop up a dialog to confirm or modify their choice.  
648 - popup_save_text(CN);  
649 -} */  
650 -#endif  
651 -  
652 -  
653 -/* Print Window popup */  
654 -  
655 -/*  
656 - * Printing the window bitmap is a rather convoluted process:  
657 - * The PrintWindow action calls PrintWindow_action(), or a menu option calls  
658 - * print_window_option().  
659 - * print_window_option() pops up the dialog.  
660 - * The OK button on the dialog triggers print_window_callback.  
661 - * print_window_callback pops down the dialog, then schedules a timeout  
662 - * 1 second away.  
663 - * When the timeout expires, it triggers snap_it(), which finally calls  
664 - * xwd.  
665 - * The timeout indirection is necessary because xwd prints the actual contents  
666 - * of the window, including any pop-up dialog in front of it. We pop down the  
667 - * dialog, but then it is up to the server and Xt to send us the appropriate  
668 - * expose events to repaint our window. Hopefully, one second is enough to do  
669 - * that.  
670 - */  
671 -  
672 -/* Termination procedure for window print. */ /*  
673 -static void  
674 -print_window_done(int status)  
675 -{  
676 - if (status)  
677 - popup_an_error("Print program exited with status %d.",  
678 - (status & 0xff00) >> 8);  
679 - else if (appres.do_confirms)  
680 - popup_an_info("Bitmap printed.");  
681 -}  
682 -*/  
683 -/* Timeout callback for window print. */ /*  
684 -static void  
685 -snap_it(XtPointer closure unused, XtIntervalId *id unused)  
686 -{  
687 - if (!print_window_command)  
688 - return;  
689 - XSync(display, 0);  
690 - print_window_done(system(print_window_command));  
691 - print_window_command = CN;  
692 -}  
693 -*/  
694 -/* Callback for "OK" button on print window popup. */ /*  
695 -static void  
696 -print_window_callback(Widget w unused, XtPointer client_data,  
697 - XtPointer call_data unused)  
698 -{  
699 - print_window_command = XawDialogGetValueString((Widget)client_data);  
700 - XtPopdown(print_window_shell);  
701 - if (print_window_command)  
702 - (void) XtAppAddTimeOut(appcontext, 1000, snap_it, 0);  
703 -} */  
704 -  
705 -/* Print the contents of the screen as a bitmap. */ /*  
706 -void  
707 -PrintWindow_action(Widget w unused, XEvent *event, String *params,  
708 - Cardinal *num_params)  
709 -{  
710 - char *filter = get_resource(ResPrintWindowCommand);  
711 - char *fb = XtMalloc(strlen(filter) + 16);  
712 - char *xfb = fb;  
713 - Boolean secure = appres.secure;  
714 -  
715 - if (*num_params > 0)  
716 - filter = params[0];  
717 - if (*num_params > 1)  
718 - popup_an_error("%s: extra arguments ignored",  
719 - action_name(PrintWindow_action));  
720 - if (filter == CN) {  
721 - popup_an_error("%s: no %s defined",  
722 - action_name(PrintWindow_action), ResPrintWindowCommand);  
723 - return;  
724 - }  
725 - (void) sprintf(fb, filter, XtWindow(toplevel));  
726 - if (fb[0] == '@') {  
727 - secure = True;  
728 - xfb = fb + 1;  
729 - }  
730 - if (secure) {  
731 - print_window_done(system(xfb));  
732 - Free(fb);  
733 - return;  
734 - }  
735 - if (print_window_shell == NULL)  
736 - print_window_shell = create_form_popup("printWindow",  
737 - print_window_callback, (XtCallbackProc)NULL, FORM_AS_IS);  
738 - XtVaSetValues(XtNameToWidget(print_window_shell, ObjDialog),  
739 - XtNvalue, fb,  
740 - NULL);  
741 - popup_popup(print_window_shell, XtGrabExclusive);  
742 -}  
743 -*/  
744 -  
745 -#if defined(X3270_MENUS) /*[*/  
746 -/* Callback for menu Print Window option. */ /*  
747 -void  
748 -print_window_option(Widget w, XtPointer client_data unused,  
749 - XtPointer call_data unused)  
750 -{  
751 - Cardinal zero = 0;  
752 -  
753 - PrintWindow_action(w, (XEvent *)NULL, (String *)NULL, &zero);  
754 -} */  
755 -#endif /*]*/  
756 -  
757 -#endif /*]*/  
src/lib3270/printerc.h
@@ -17,11 +17,11 @@ @@ -17,11 +17,11 @@
17 * Printer session support 17 * Printer session support
18 */ 18 */
19 19
20 -LIB3270_INTERNAL void printer_init(void);  
21 -LIB3270_INTERNAL void printer_lu_dialog(void);  
22 -LIB3270_INTERNAL void printer_start(const char *lu);  
23 -LIB3270_INTERNAL void printer_stop(void);  
24 -LIB3270_INTERNAL Boolean printer_running(void); 20 +// LIB3270_INTERNAL void printer_init(void);
  21 +// LIB3270_INTERNAL void printer_lu_dialog(void);
  22 +// LIB3270_INTERNAL void printer_start(const char *lu);
  23 +// LIB3270_INTERNAL void printer_stop(void);
  24 +// LIB3270_INTERNAL Boolean printer_running(void);
25 #if defined(_WIN32) /*[*/ 25 #if defined(_WIN32) /*[*/
26 -LIB3270_INTERNAL void printer_check(void); 26 +// LIB3270_INTERNAL void printer_check(void);
27 #endif /*]*/ 27 #endif /*]*/
src/lib3270/resources.c
@@ -33,7 +33,9 @@ @@ -33,7 +33,9 @@
33 33
34 #include <stdio.h> 34 #include <stdio.h>
35 #include <string.h> 35 #include <string.h>
  36 +
36 #include "globals.h" 37 #include "globals.h"
  38 +#include "utilc.h"
37 39
38 extern String fallbacks[]; 40 extern String fallbacks[];
39 41
@@ -103,11 +105,10 @@ static struct { @@ -103,11 +105,10 @@ static struct {
103 static struct dresource { 105 static struct dresource {
104 struct dresource *next; 106 struct dresource *next;
105 const char *name; 107 const char *name;
106 - char *value; 108 + const char *value;
107 } *drdb = NULL, **drdb_next = &drdb; 109 } *drdb = NULL, **drdb_next = &drdb;
108 110
109 -void  
110 -add_resource(const char *name, char *value) 111 +void add_resource(const char *name, const char *value)
111 { 112 {
112 struct dresource *d; 113 struct dresource *d;
113 114
@@ -125,6 +126,7 @@ add_resource(const char *name, char *value) @@ -125,6 +126,7 @@ add_resource(const char *name, char *value)
125 drdb_next = &d->next; 126 drdb_next = &d->next;
126 } 127 }
127 128
  129 +
128 const char * get_resource(const char *name) 130 const char * get_resource(const char *name)
129 { 131 {
130 struct dresource *d; 132 struct dresource *d;
@@ -161,3 +163,19 @@ const char * get_resource(const char *name) @@ -161,3 +163,19 @@ const char * get_resource(const char *name)
161 #endif 163 #endif
162 return NULL; 164 return NULL;
163 } 165 }
  166 +
  167 +/* A version of get_resource that accepts sprintf arguments. */
  168 +const char * get_fresource(const char *fmt, ...)
  169 +{
  170 + va_list args;
  171 + char *name;
  172 + const char *r;
  173 +
  174 + va_start(args, fmt);
  175 + name = xs_vsprintf(fmt, args);
  176 + va_end(args);
  177 + r = get_resource(name);
  178 + Free(name);
  179 + return r;
  180 +}
  181 +
src/lib3270/util.c
@@ -157,8 +157,7 @@ const char * win32_strerror(int e) @@ -157,8 +157,7 @@ const char * win32_strerror(int e)
157 /* 157 /*
158 * Cheesy internal version of sprintf that allocates its own memory. 158 * Cheesy internal version of sprintf that allocates its own memory.
159 */ 159 */
160 -static char *  
161 -xs_vsprintf(const char *fmt, va_list args) 160 +char * xs_vsprintf(const char *fmt, va_list args)
162 { 161 {
163 char *r; 162 char *r;
164 #if defined(HAVE_VASPRINTF) /*[*/ 163 #if defined(HAVE_VASPRINTF) /*[*/
@@ -496,6 +495,7 @@ split_lresource(char **st, char **value) @@ -496,6 +495,7 @@ split_lresource(char **st, char **value)
496 #endif /*]*/ 495 #endif /*]*/
497 496
498 497
  498 +/*
499 #if !defined(LIB3270) 499 #if !defined(LIB3270)
500 500
501 const char * 501 const char *
@@ -514,6 +514,7 @@ get_message(const char *key) @@ -514,6 +514,7 @@ get_message(const char *key)
514 } 514 }
515 515
516 #endif 516 #endif
  517 +*/
517 518
518 #define ex_getenv getenv 519 #define ex_getenv getenv
519 520
@@ -749,22 +750,6 @@ ctl_see(int c) @@ -749,22 +750,6 @@ ctl_see(int c)
749 return buf; 750 return buf;
750 } 751 }
751 752
752 -/* A version of get_resource that accepts sprintf arguments. */  
753 -char *  
754 -get_fresource(const char *fmt, ...)  
755 -{  
756 - va_list args;  
757 - char *name;  
758 - char *r;  
759 -  
760 - va_start(args, fmt);  
761 - name = xs_vsprintf(fmt, args);  
762 - va_end(args);  
763 - r = get_resource(name);  
764 - Free(name);  
765 - return r;  
766 -}  
767 -  
768 /* 753 /*
769 * Whitespace stripper. 754 * Whitespace stripper.
770 */ 755 */
src/lib3270/utilc.h
@@ -23,17 +23,20 @@ LIB3270_INTERNAL char *ctl_see(int c); @@ -23,17 +23,20 @@ LIB3270_INTERNAL char *ctl_see(int c);
23 LIB3270_INTERNAL char *do_subst(const char *s, Boolean do_vars, Boolean do_tilde); 23 LIB3270_INTERNAL char *do_subst(const char *s, Boolean do_vars, Boolean do_tilde);
24 LIB3270_INTERNAL void fcatv(FILE *f, char *s); 24 LIB3270_INTERNAL void fcatv(FILE *f, char *s);
25 LIB3270_INTERNAL const char *get_message(const char *key); 25 LIB3270_INTERNAL const char *get_message(const char *key);
26 -LIB3270_INTERNAL char *get_fresource(const char *fmt, ...) printflike(1, 2);  
27 -LIB3270_INTERNAL char *get_resource(const char *name); 26 +LIB3270_INTERNAL const char *get_fresource(const char *fmt, ...) printflike(1, 2);
  27 +LIB3270_INTERNAL const char *get_resource(const char *name);
28 LIB3270_INTERNAL char *scatv(const char *s, char *buf, size_t len); 28 LIB3270_INTERNAL char *scatv(const char *s, char *buf, size_t len);
29 LIB3270_INTERNAL int split_dbcs_resource(const char *value, char sep, char **part1, 29 LIB3270_INTERNAL int split_dbcs_resource(const char *value, char sep, char **part1,
30 char **part2); 30 char **part2);
31 LIB3270_INTERNAL int split_dresource(char **st, char **left, char **right); 31 LIB3270_INTERNAL int split_dresource(char **st, char **left, char **right);
32 LIB3270_INTERNAL int split_lresource(char **st, char **value); 32 LIB3270_INTERNAL int split_lresource(char **st, char **value);
33 LIB3270_INTERNAL char *strip_whitespace(const char *s); 33 LIB3270_INTERNAL char *strip_whitespace(const char *s);
  34 +
34 LIB3270_INTERNAL char *xs_buffer(const char *fmt, ...) printflike(1, 2); 35 LIB3270_INTERNAL char *xs_buffer(const char *fmt, ...) printflike(1, 2);
35 LIB3270_INTERNAL void xs_error(const char *fmt, ...) printflike(1, 2); 36 LIB3270_INTERNAL void xs_error(const char *fmt, ...) printflike(1, 2);
36 LIB3270_INTERNAL void xs_warning(const char *fmt, ...) printflike(1, 2); 37 LIB3270_INTERNAL void xs_warning(const char *fmt, ...) printflike(1, 2);
  38 +LIB3270_INTERNAL char * xs_vsprintf(const char *fmt, va_list args);
  39 +
37 40
38 LIB3270_INTERNAL unsigned long AddInput(int, H3270 *session, void (*fn)(H3270 *session)); 41 LIB3270_INTERNAL unsigned long AddInput(int, H3270 *session, void (*fn)(H3270 *session));
39 LIB3270_INTERNAL unsigned long AddExcept(int, H3270 *session, void (*fn)(H3270 *session)); 42 LIB3270_INTERNAL unsigned long AddExcept(int, H3270 *session, void (*fn)(H3270 *session));