Commit 7daf2ea7978618321281194a8c74c63e29358434
Committed by
GitHub
Exists in
master
and in
1 other branch
Merge pull request #13 from PerryWerneck/develop
Update to latest developmento level.
Showing
11 changed files
with
674 additions
and
339 deletions
Show diff stats
Makefile.in
@@ -109,7 +109,8 @@ DEPENDS= \ | @@ -109,7 +109,8 @@ DEPENDS= \ | ||
109 | src/filetransfer/marshal.h \ | 109 | src/filetransfer/marshal.h \ |
110 | src/filetransfer/private.h \ | 110 | src/filetransfer/private.h \ |
111 | src/terminal/marshal.h \ | 111 | src/terminal/marshal.h \ |
112 | - src/trace/marshal.h | 112 | + src/trace/marshal.h \ |
113 | + src/dialogs/settings/marshal.h | ||
113 | 114 | ||
114 | DATE_FMT = +%Y%m%d | 115 | DATE_FMT = +%Y%m%d |
115 | ifdef SOURCE_DATE_EPOCH | 116 | ifdef SOURCE_DATE_EPOCH |
@@ -239,6 +240,14 @@ src/terminal/marshal.h: \ | @@ -239,6 +240,14 @@ src/terminal/marshal.h: \ | ||
239 | 240 | ||
240 | @$(GENMARSHAL) --prefix=v3270 --header $< > $@ | 241 | @$(GENMARSHAL) --prefix=v3270 --header $< > $@ |
241 | 242 | ||
243 | +src/dialogs/settings/marshal.h: \ | ||
244 | + src/dialogs/settings/marshal | ||
245 | + | ||
246 | + @echo $@ ... | ||
247 | + @$(MKDIR) $(@D) | ||
248 | + | ||
249 | + @$(GENMARSHAL) --prefix=v3270 --header $< > $@ | ||
250 | + | ||
242 | $(OBJDIR)/marshal/v3270.c: \ | 251 | $(OBJDIR)/marshal/v3270.c: \ |
243 | src/terminal/marshal | 252 | src/terminal/marshal |
244 | 253 |
locale/pt_BR.po
1 | # | 1 | # |
2 | -# Perry Werneck <perry.werneck@gmail.com>, 2012, 2013, 2014, 2016, 2017, 2018, 2019, 2020. | 2 | +# Perry Werneck <perry.werneck@gmail.com>, 2012, 2013, 2014, 2016, 2017, 2018, 2019, 2020, 2021. |
3 | # | 3 | # |
4 | msgid "" | 4 | msgid "" |
5 | msgstr "" | 5 | msgstr "" |
6 | "Project-Id-Version: pw3270 5.0\n" | 6 | "Project-Id-Version: pw3270 5.0\n" |
7 | "Report-Msgid-Bugs-To: \n" | 7 | "Report-Msgid-Bugs-To: \n" |
8 | -"POT-Creation-Date: 2020-10-24 11:11-0300\n" | ||
9 | -"PO-Revision-Date: 2020-10-15 15:37-0300\n" | 8 | +"POT-Creation-Date: 2021-04-19 00:14-0300\n" |
9 | +"PO-Revision-Date: 2021-04-19 00:49-0300\n" | ||
10 | "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n" | 10 | "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n" |
11 | -"Language-Team: Português <>\n" | 11 | +"Language-Team: Português <perry.werneck@gmail.com>\n" |
12 | "Language: pt_BR\n" | 12 | "Language: pt_BR\n" |
13 | "MIME-Version: 1.0\n" | 13 | "MIME-Version: 1.0\n" |
14 | "Content-Type: text/plain; charset=UTF-8\n" | 14 | "Content-Type: text/plain; charset=UTF-8\n" |
@@ -16,11 +16,10 @@ msgstr "" | @@ -16,11 +16,10 @@ msgstr "" | ||
16 | "X-Poedit-Language: Portuguese\n" | 16 | "X-Poedit-Language: Portuguese\n" |
17 | "X-Poedit-Country: BRAZIL\n" | 17 | "X-Poedit-Country: BRAZIL\n" |
18 | "X-Poedit-SourceCharset: utf-8\n" | 18 | "X-Poedit-SourceCharset: utf-8\n" |
19 | -"Plural-Forms: nplurals=4; plural= (n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != " | ||
20 | -"11) ? 2 : 3;\n" | 19 | +"Plural-Forms: nplurals=2; plural=(n > 1);\n" |
21 | "X-Generator: Gtranslator 2.91.7\n" | 20 | "X-Generator: Gtranslator 2.91.7\n" |
22 | 21 | ||
23 | -#: src/dialogs/settings/host.c:170 | 22 | +#: src/dialogs/settings/host.c:169 |
24 | msgid "16 colors" | 23 | msgid "16 colors" |
25 | msgstr "16 cores" | 24 | msgstr "16 cores" |
26 | 25 | ||
@@ -31,15 +30,15 @@ msgstr "16 cores" | @@ -31,15 +30,15 @@ msgstr "16 cores" | ||
31 | msgid "3270 File transfer" | 30 | msgid "3270 File transfer" |
32 | msgstr "Transferência de arquivos 3270" | 31 | msgstr "Transferência de arquivos 3270" |
33 | 32 | ||
34 | -#: src/terminal/accessible.c:101 | 33 | +#: src/terminal/accessible.c:100 |
35 | msgid "3270 screen" | 34 | msgid "3270 screen" |
36 | msgstr "Tela 3270" | 35 | msgstr "Tela 3270" |
37 | 36 | ||
38 | -#: src/dialogs/settings/host.c:169 | 37 | +#: src/dialogs/settings/host.c:168 |
39 | msgid "8 colors" | 38 | msgid "8 colors" |
40 | msgstr "8 cores" | 39 | msgstr "8 cores" |
41 | 40 | ||
42 | -#: src/terminal/widget.c:158 | 41 | +#: src/terminal/widget.c:159 |
43 | msgid "" | 42 | msgid "" |
44 | "<b>Identity not verified</b>\n" | 43 | "<b>Identity not verified</b>\n" |
45 | "Disconnected from host" | 44 | "Disconnected from host" |
@@ -55,7 +54,7 @@ msgstr "<b>Opções de texto</b>" | @@ -55,7 +54,7 @@ msgstr "<b>Opções de texto</b>" | ||
55 | msgid "A_ppend to file" | 54 | msgid "A_ppend to file" |
56 | msgstr "_Adicionar ao arquivo" | 55 | msgstr "_Adicionar ao arquivo" |
57 | 56 | ||
58 | -#: src/dialogs/security.c:241 | 57 | +#: src/dialogs/security.c:238 |
59 | msgid "About security" | 58 | msgid "About security" |
60 | msgstr "Sobre a segurança" | 59 | msgstr "Sobre a segurança" |
61 | 60 | ||
@@ -84,11 +83,11 @@ msgstr "Atividade já está na fila" | @@ -84,11 +83,11 @@ msgstr "Atividade já está na fila" | ||
84 | msgid "Add to copy" | 83 | msgid "Add to copy" |
85 | msgstr "Adicionar à cópia" | 84 | msgstr "Adicionar à cópia" |
86 | 85 | ||
87 | -#: src/dialogs/settings/host.c:216 | 86 | +#: src/dialogs/settings/url.c:209 |
88 | msgid "Address or name of the host to connect." | 87 | msgid "Address or name of the host to connect." |
89 | msgstr "Endereço ou nome do host a conectar." | 88 | msgstr "Endereço ou nome do host a conectar." |
90 | 89 | ||
91 | -#: src/tools/entry.c:121 | 90 | +#: src/tools/entry.c:122 |
92 | msgid "All files" | 91 | msgid "All files" |
93 | msgstr "Todos os arquivos" | 92 | msgstr "Todos os arquivos" |
94 | 93 | ||
@@ -129,7 +128,7 @@ msgstr "Adiciona conteúdo do arquivo origem ao final do arquivo destino." | @@ -129,7 +128,7 @@ msgstr "Adiciona conteúdo do arquivo origem ao final do arquivo destino." | ||
129 | msgid "Assign it to action (<b>%s</b>)?" | 128 | msgid "Assign it to action (<b>%s</b>)?" |
130 | msgstr "Associar com a ação (<b>%s</b>)?" | 129 | msgstr "Associar com a ação (<b>%s</b>)?" |
131 | 130 | ||
132 | -#: src/dialogs/settings/host.c:510 | 131 | +#: src/dialogs/settings/host.c:463 |
133 | msgid "Auto _disconnect" | 132 | msgid "Auto _disconnect" |
134 | msgstr "Desconexão automática" | 133 | msgstr "Desconexão automática" |
135 | 134 | ||
@@ -166,7 +165,7 @@ msgstr "Azul" | @@ -166,7 +165,7 @@ msgstr "Azul" | ||
166 | msgid "Bold" | 165 | msgid "Bold" |
167 | msgstr "Negrito" | 166 | msgstr "Negrito" |
168 | 167 | ||
169 | -#: src/dialogs/load.c:181 src/dialogs/save/save.c:268 | 168 | +#: src/dialogs/load.c:199 src/dialogs/save/save.c:276 |
170 | msgid "C_haracter Coding" | 169 | msgid "C_haracter Coding" |
171 | msgstr "C_odificação de caracteres" | 170 | msgstr "C_odificação de caracteres" |
172 | 171 | ||
@@ -188,7 +187,7 @@ msgstr "Não encontrei uma fonte válida com o nome \"%s\"" | @@ -188,7 +187,7 @@ msgstr "Não encontrei uma fonte válida com o nome \"%s\"" | ||
188 | msgid "Can't load %s" | 187 | msgid "Can't load %s" |
189 | msgstr "Não foi possível carregar %s" | 188 | msgstr "Não foi possível carregar %s" |
190 | 189 | ||
191 | -#: src/dialogs/load.c:323 | 190 | +#: src/dialogs/load.c:317 |
192 | #, c-format | 191 | #, c-format |
193 | msgid "Can't open %s" | 192 | msgid "Can't open %s" |
194 | msgstr "Não foi possível abrir %s" | 193 | msgstr "Não foi possível abrir %s" |
@@ -215,26 +214,25 @@ msgid "Can't paste text" | @@ -215,26 +214,25 @@ msgid "Can't paste text" | ||
215 | msgstr "Não é possível colar texto" | 214 | msgstr "Não é possível colar texto" |
216 | 215 | ||
217 | #: src/filetransfer/save.c:117 src/filetransfer/activitylist.c:436 | 216 | #: src/filetransfer/save.c:117 src/filetransfer/activitylist.c:436 |
218 | -#: src/trace/trace.c:484 src/dialogs/transfer.c:91 src/dialogs/save/save.c:625 | 217 | +#: src/trace/trace.c:484 src/dialogs/transfer.c:91 src/dialogs/save/save.c:608 |
219 | #, c-format | 218 | #, c-format |
220 | msgid "Can't save %s" | 219 | msgid "Can't save %s" |
221 | msgstr "Não foi possível salvar arquivo %s" | 220 | msgstr "Não foi possível salvar arquivo %s" |
222 | 221 | ||
223 | -#: src/filetransfer/worker.c:610 src/filetransfer/v3270ftprogress.c:773 | 222 | +#: src/filetransfer/worker.c:618 src/filetransfer/v3270ftprogress.c:781 |
224 | msgid "Can't set callback table" | 223 | msgid "Can't set callback table" |
225 | msgstr "Não foi possível setar a tabela de retornos" | 224 | msgstr "Não foi possível setar a tabela de retornos" |
226 | 225 | ||
227 | -#: src/terminal/iocallback.c:200 | 226 | +#: src/terminal/iocallback.c:196 |
228 | msgid "Can't set lib3270 I/O controller" | 227 | msgid "Can't set lib3270 I/O controller" |
229 | msgstr "Não foi possível registrar manipuladores de I/O 3270" | 228 | msgstr "Não foi possível registrar manipuladores de I/O 3270" |
230 | 229 | ||
231 | -#: src/filetransfer/worker.c:591 src/filetransfer/v3270ftprogress.c:760 | 230 | +#: src/filetransfer/worker.c:599 src/filetransfer/v3270ftprogress.c:768 |
232 | msgid "Can't start file transfer session" | 231 | msgid "Can't start file transfer session" |
233 | msgstr "Não foi possível iniciar transferência de arquivo" | 232 | msgstr "Não foi possível iniciar transferência de arquivo" |
234 | 233 | ||
235 | #: src/filetransfer/v3270ftprogress.c:433 src/filetransfer/transfer.c:89 | 234 | #: src/filetransfer/v3270ftprogress.c:433 src/filetransfer/transfer.c:89 |
236 | -#: src/dialogs/load.c:111 src/dialogs/save/save.c:117 | ||
237 | -#: src/dialogs/settings/host.c:401 src/tools/entry.c:99 | 235 | +#: src/dialogs/settings/host.c:366 src/tools/entry.c:99 |
238 | msgid "Cancel" | 236 | msgid "Cancel" |
239 | msgstr "Cancelar" | 237 | msgstr "Cancelar" |
240 | 238 | ||
@@ -246,18 +244,6 @@ msgstr "Cancelar transferência" | @@ -246,18 +244,6 @@ msgstr "Cancelar transferência" | ||
246 | msgid "Check this if the file consists of character data only." | 244 | msgid "Check this if the file consists of character data only." |
247 | msgstr "Marque se o arquivo contem apenas texto." | 245 | msgstr "Marque se o arquivo contem apenas texto." |
248 | 246 | ||
249 | -#: src/dialogs/load.c:206 src/dialogs/save/save.c:343 | ||
250 | -msgid "Click to cancel operation" | ||
251 | -msgstr "Clique para cancelar operação" | ||
252 | - | ||
253 | -#: src/dialogs/load.c:211 | ||
254 | -msgid "Click to load file" | ||
255 | -msgstr "Clique para carregar arquivo" | ||
256 | - | ||
257 | -#: src/dialogs/save/save.c:348 | ||
258 | -msgid "Click to save file" | ||
259 | -msgstr "Clique para salvar arquivo" | ||
260 | - | ||
261 | #: src/dialogs/settings/clipboard.c:420 | 247 | #: src/dialogs/settings/clipboard.c:420 |
262 | msgid "Clipboard" | 248 | msgid "Clipboard" |
263 | msgstr "Área de transferência" | 249 | msgstr "Área de transferência" |
@@ -286,11 +272,11 @@ msgstr "Cores" | @@ -286,11 +272,11 @@ msgstr "Cores" | ||
286 | msgid "Comma separated list of LU names" | 272 | msgid "Comma separated list of LU names" |
287 | msgstr "Lista de LUs separadas por vírgula" | 273 | msgstr "Lista de LUs separadas por vírgula" |
288 | 274 | ||
289 | -#: src/dialogs/settings/host.c:268 | 275 | +#: src/dialogs/settings/host.c:241 |
290 | msgid "Comma separated list of LU names." | 276 | msgid "Comma separated list of LU names." |
291 | msgstr "Lista de LUs separadas por vírgula." | 277 | msgstr "Lista de LUs separadas por vírgula." |
292 | 278 | ||
293 | -#: src/dialogs/save/save.c:55 | 279 | +#: src/dialogs/save/save.c:56 |
294 | msgid "Comma-separated values (CSV)" | 280 | msgid "Comma-separated values (CSV)" |
295 | msgstr "Arquivo separado por vírgulas (CSV)" | 281 | msgstr "Arquivo separado por vírgulas (CSV)" |
296 | 282 | ||
@@ -298,7 +284,7 @@ msgstr "Arquivo separado por vírgulas (CSV)" | @@ -298,7 +284,7 @@ msgstr "Arquivo separado por vírgulas (CSV)" | ||
298 | msgid "Command to execute" | 284 | msgid "Command to execute" |
299 | msgstr "Comando a executar" | 285 | msgstr "Comando a executar" |
300 | 286 | ||
301 | -#: src/dialogs/settings/host.c:471 | 287 | +#: src/dialogs/settings/host.c:430 |
302 | msgid "Connection" | 288 | msgid "Connection" |
303 | msgstr "Conexão" | 289 | msgstr "Conexão" |
304 | 290 | ||
@@ -355,7 +341,7 @@ msgstr "Cria arquivo com registros de tamanho variável." | @@ -355,7 +341,7 @@ msgstr "Cria arquivo com registros de tamanho variável." | ||
355 | msgid "Cross hair cursor" | 341 | msgid "Cross hair cursor" |
356 | msgstr "Cursor mira" | 342 | msgstr "Cursor mira" |
357 | 343 | ||
358 | -#: src/dialogs/tools.c:182 | 344 | +#: src/dialogs/tools.c:178 |
359 | #, c-format | 345 | #, c-format |
360 | msgid "Current (%s)" | 346 | msgid "Current (%s)" |
361 | msgstr "Atual (%s)" | 347 | msgstr "Atual (%s)" |
@@ -372,7 +358,7 @@ msgstr "Posição atual da transferência" | @@ -372,7 +358,7 @@ msgstr "Posição atual da transferência" | ||
372 | msgid "Current:" | 358 | msgid "Current:" |
373 | msgstr "Atual:" | 359 | msgstr "Atual:" |
374 | 360 | ||
375 | -#: src/dialogs/settings/host.c:254 | 361 | +#: src/dialogs/settings/host.c:227 |
376 | msgid "Custom Remap" | 362 | msgid "Custom Remap" |
377 | msgstr "Mapeamento personalizado" | 363 | msgstr "Mapeamento personalizado" |
378 | 364 | ||
@@ -417,7 +403,7 @@ msgstr "Turquesa Escuro" | @@ -417,7 +403,7 @@ msgstr "Turquesa Escuro" | ||
417 | msgid "Default" | 403 | msgid "Default" |
418 | msgstr "Padrão" | 404 | msgstr "Padrão" |
419 | 405 | ||
420 | -#: src/dialogs/popups.c:149 | 406 | +#: src/dialogs/popups.c:155 |
421 | msgid "Don't ask again" | 407 | msgid "Don't ask again" |
422 | msgstr "Não perguntar de novo" | 408 | msgstr "Não perguntar de novo" |
423 | 409 | ||
@@ -433,7 +419,7 @@ msgstr "ETA:" | @@ -433,7 +419,7 @@ msgstr "ETA:" | ||
433 | msgid "Emit a PA Key action" | 419 | msgid "Emit a PA Key action" |
434 | msgstr "Emite uma ação de tecla PA" | 420 | msgstr "Emite uma ação de tecla PA" |
435 | 421 | ||
436 | -#: src/dialogs/settings/host.c:481 | 422 | +#: src/dialogs/settings/host.c:440 |
437 | msgid "Emulation" | 423 | msgid "Emulation" |
438 | msgstr "Emulação" | 424 | msgstr "Emulação" |
439 | 425 | ||
@@ -445,7 +431,7 @@ msgstr "Habilitado" | @@ -445,7 +431,7 @@ msgstr "Habilitado" | ||
445 | msgid "Error on print operation" | 431 | msgid "Error on print operation" |
446 | msgstr "Erro na operação de impressão" | 432 | msgstr "Erro na operação de impressão" |
447 | 433 | ||
448 | -#: src/dialogs/save/save.c:579 | 434 | +#: src/dialogs/save/save.c:562 |
449 | msgid "Error saving image" | 435 | msgid "Error saving image" |
450 | msgstr "Erro ao salvar imagem" | 436 | msgstr "Erro ao salvar imagem" |
451 | 437 | ||
@@ -457,7 +443,7 @@ msgstr "Tempo estimado para a transferência" | @@ -457,7 +443,7 @@ msgstr "Tempo estimado para a transferência" | ||
457 | msgid "Field colors" | 443 | msgid "Field colors" |
458 | msgstr "Cor dos campos" | 444 | msgstr "Cor dos campos" |
459 | 445 | ||
460 | -#: src/dialogs/save/save.c:282 | 446 | +#: src/dialogs/save/save.c:290 |
461 | msgid "File _Format" | 447 | msgid "File _Format" |
462 | msgstr "_Formato do arquivo" | 448 | msgstr "_Formato do arquivo" |
463 | 449 | ||
@@ -544,27 +530,31 @@ msgstr "Verde" | @@ -544,27 +530,31 @@ msgstr "Verde" | ||
544 | msgid "HTML options" | 530 | msgid "HTML options" |
545 | msgstr "Opções HTML" | 531 | msgstr "Opções HTML" |
546 | 532 | ||
547 | -#: src/dialogs/settings/host.c:664 | 533 | +#: src/dialogs/settings/host.c:580 |
548 | msgid "Host" | 534 | msgid "Host" |
549 | msgstr "Servidor" | 535 | msgstr "Servidor" |
550 | 536 | ||
551 | -#: src/dialogs/settings/host.c:663 | 537 | +#: src/dialogs/settings/host.c:579 |
552 | msgid "Host settings" | 538 | msgid "Host settings" |
553 | msgstr "Configurações do servidor" | 539 | msgstr "Configurações do servidor" |
554 | 540 | ||
555 | -#: src/dialogs/save/save.c:59 | 541 | +#: src/dialogs/settings/url.c:208 |
542 | +msgid "Hostname" | ||
543 | +msgstr "Nome do host" | ||
544 | + | ||
545 | +#: src/dialogs/save/save.c:60 | ||
556 | msgid "HyperText Markup Language (HTML)" | 546 | msgid "HyperText Markup Language (HTML)" |
557 | msgstr "Documento HTML" | 547 | msgstr "Documento HTML" |
558 | 548 | ||
559 | -#: src/dialogs/settings/host.c:140 | 549 | +#: src/dialogs/settings/host.c:139 |
560 | msgid "IBM AS/400" | 550 | msgid "IBM AS/400" |
561 | msgstr "IBM AS/400" | 551 | msgstr "IBM AS/400" |
562 | 552 | ||
563 | -#: src/dialogs/settings/host.c:139 | 553 | +#: src/dialogs/settings/host.c:138 |
564 | msgid "IBM S/390" | 554 | msgid "IBM S/390" |
565 | msgstr "IBM S/390" | 555 | msgstr "IBM S/390" |
566 | 556 | ||
567 | -#: src/terminal/properties/init.c:113 src/dialogs/settings/host.c:514 | 557 | +#: src/terminal/properties/init.c:113 src/dialogs/settings/host.c:467 |
568 | msgid "IDLE minutes for automatic disconnection" | 558 | msgid "IDLE minutes for automatic disconnection" |
569 | msgstr "Minutos para desconexão automática" | 559 | msgstr "Minutos para desconexão automática" |
570 | 560 | ||
@@ -608,7 +598,7 @@ msgstr "Intensificado/Protegido" | @@ -608,7 +598,7 @@ msgstr "Intensificado/Protegido" | ||
608 | msgid "Intensified/Unprotected" | 598 | msgid "Intensified/Unprotected" |
609 | msgstr "Intensificado/Desprotegido" | 599 | msgstr "Intensificado/Desprotegido" |
610 | 600 | ||
611 | -#: src/terminal/callbacks.c:440 | 601 | +#: src/terminal/callbacks.c:463 |
612 | #, c-format | 602 | #, c-format |
613 | msgid "" | 603 | msgid "" |
614 | "Invalid callback table, the release %s of lib%s can't be used (expecting " | 604 | "Invalid callback table, the release %s of lib%s can't be used (expecting " |
@@ -625,7 +615,7 @@ msgstr "Valor cgcsgid é inválido" | @@ -625,7 +615,7 @@ msgstr "Valor cgcsgid é inválido" | ||
625 | msgid "Invalid remap scope" | 615 | msgid "Invalid remap scope" |
626 | msgstr "Escopo de mapeamento inválido" | 616 | msgstr "Escopo de mapeamento inválido" |
627 | 617 | ||
628 | -#: src/dialogs/security.c:186 | 618 | +#: src/dialogs/security.c:185 |
629 | msgid "Invalid state" | 619 | msgid "Invalid state" |
630 | msgstr "Estado inválido" | 620 | msgstr "Estado inválido" |
631 | 621 | ||
@@ -634,7 +624,7 @@ msgstr "Estado inválido" | @@ -634,7 +624,7 @@ msgstr "Estado inválido" | ||
634 | msgid "Keyboard accelerators" | 624 | msgid "Keyboard accelerators" |
635 | msgstr "Atalhos de teclado" | 625 | msgstr "Atalhos de teclado" |
636 | 626 | ||
637 | -#: src/dialogs/settings/host.c:267 | 627 | +#: src/dialogs/settings/host.c:240 |
638 | msgid "L_U Names" | 628 | msgid "L_U Names" |
639 | msgstr "Nomes de L_U" | 629 | msgstr "Nomes de L_U" |
640 | 630 | ||
@@ -654,7 +644,7 @@ msgstr "Arquivo local:" | @@ -654,7 +644,7 @@ msgstr "Arquivo local:" | ||
654 | msgid "Local:" | 644 | msgid "Local:" |
655 | msgstr "Local:" | 645 | msgstr "Local:" |
656 | 646 | ||
657 | -#: src/dialogs/settings/host.c:242 | 647 | +#: src/dialogs/settings/host.c:215 |
658 | msgid "Makes the screen larger than the default for the chosen model number." | 648 | msgid "Makes the screen larger than the default for the chosen model number." |
659 | msgstr "Usa tamanho maior do que o padrão para o modelo escolhido." | 649 | msgstr "Usa tamanho maior do que o padrão para o modelo escolhido." |
660 | 650 | ||
@@ -662,23 +652,23 @@ msgstr "Usa tamanho maior do que o padrão para o modelo escolhido." | @@ -662,23 +652,23 @@ msgstr "Usa tamanho maior do que o padrão para o modelo escolhido." | ||
662 | msgid "Misc colors" | 652 | msgid "Misc colors" |
663 | msgstr "Cores diversas" | 653 | msgstr "Cores diversas" |
664 | 654 | ||
665 | -#: src/dialogs/settings/host.c:197 | 655 | +#: src/dialogs/settings/host.c:196 |
666 | msgid "Model 2 - 80x24" | 656 | msgid "Model 2 - 80x24" |
667 | msgstr "Modelo 2 - 80x24" | 657 | msgstr "Modelo 2 - 80x24" |
668 | 658 | ||
669 | -#: src/dialogs/settings/host.c:198 | 659 | +#: src/dialogs/settings/host.c:197 |
670 | msgid "Model 3 - 80x32" | 660 | msgid "Model 3 - 80x32" |
671 | msgstr "Modelo 3 - 80x32" | 661 | msgstr "Modelo 3 - 80x32" |
672 | 662 | ||
673 | -#: src/dialogs/settings/host.c:199 | 663 | +#: src/dialogs/settings/host.c:198 |
674 | msgid "Model 4 - 80x43" | 664 | msgid "Model 4 - 80x43" |
675 | msgstr "Modelo 4 - 80x43" | 665 | msgstr "Modelo 4 - 80x43" |
676 | 666 | ||
677 | -#: src/dialogs/settings/host.c:200 | 667 | +#: src/dialogs/settings/host.c:199 |
678 | msgid "Model 5 - 132x27" | 668 | msgid "Model 5 - 132x27" |
679 | msgstr "Modelo 5 - 132x27" | 669 | msgstr "Modelo 5 - 132x27" |
680 | 670 | ||
681 | -#: src/dialogs/settings/host.c:168 | 671 | +#: src/dialogs/settings/host.c:167 |
682 | msgid "Monochrome" | 672 | msgid "Monochrome" |
683 | msgstr "Monocromático" | 673 | msgstr "Monocromático" |
684 | 674 | ||
@@ -690,7 +680,7 @@ msgstr "Mostarda" | @@ -690,7 +680,7 @@ msgstr "Mostarda" | ||
690 | msgid "Name" | 680 | msgid "Name" |
691 | msgstr "Nome" | 681 | msgstr "Nome" |
692 | 682 | ||
693 | -#: src/dialogs/settings/host.c:471 | 683 | +#: src/dialogs/settings/host.c:430 |
694 | msgid "Network connection settings" | 684 | msgid "Network connection settings" |
695 | msgstr "Configuração da conexão de rede" | 685 | msgstr "Configuração da conexão de rede" |
696 | 686 | ||
@@ -698,6 +688,10 @@ msgstr "Configuração da conexão de rede" | @@ -698,6 +688,10 @@ msgstr "Configuração da conexão de rede" | ||
698 | msgid "No active transfer" | 688 | msgid "No active transfer" |
699 | msgstr "Nenhuma transferência ativa" | 689 | msgstr "Nenhuma transferência ativa" |
700 | 690 | ||
691 | +#: src/dialogs/popups.c:141 | ||
692 | +msgid "No host" | ||
693 | +msgstr "Nenhum servidor" | ||
694 | + | ||
701 | #: src/terminal/properties/get.c:205 | 695 | #: src/terminal/properties/get.c:205 |
702 | msgid "No host defined" | 696 | msgid "No host defined" |
703 | msgstr "Nenhum servidor definido" | 697 | msgstr "Nenhum servidor definido" |
@@ -710,7 +704,7 @@ msgstr "Sem etiqueta" | @@ -710,7 +704,7 @@ msgstr "Sem etiqueta" | ||
710 | msgid "No transfer" | 704 | msgid "No transfer" |
711 | msgstr "Nenhuma transferência" | 705 | msgstr "Nenhuma transferência" |
712 | 706 | ||
713 | -#: src/filetransfer/worker.c:601 | 707 | +#: src/filetransfer/worker.c:609 |
714 | msgid "No transfer in progress" | 708 | msgid "No transfer in progress" |
715 | msgstr "Nenhuma transferência em andamento" | 709 | msgstr "Nenhuma transferência em andamento" |
716 | 710 | ||
@@ -762,10 +756,6 @@ msgstr "Estado inválido na OIA" | @@ -762,10 +756,6 @@ msgstr "Estado inválido na OIA" | ||
762 | msgid "OIA status ok" | 756 | msgid "OIA status ok" |
763 | msgstr "Estado normal na OIA" | 757 | msgstr "Estado normal na OIA" |
764 | 758 | ||
765 | -#: src/dialogs/load.c:93 src/dialogs/load.c:112 | ||
766 | -msgid "Open" | ||
767 | -msgstr "Abrir" | ||
768 | - | ||
769 | #: src/dialogs/save/convenience.c:65 src/dialogs/save/convenience.c:93 | 759 | #: src/dialogs/save/convenience.c:65 src/dialogs/save/convenience.c:93 |
770 | msgid "Operation has failed" | 760 | msgid "Operation has failed" |
771 | msgstr "Operação falhou" | 761 | msgstr "Operação falhou" |
@@ -778,15 +768,15 @@ msgstr "Opções" | @@ -778,15 +768,15 @@ msgstr "Opções" | ||
778 | msgid "Orange" | 768 | msgid "Orange" |
779 | msgstr "Laranja" | 769 | msgstr "Laranja" |
780 | 770 | ||
781 | -#: src/dialogs/settings/host.c:141 | 771 | +#: src/dialogs/settings/host.c:140 |
782 | msgid "Other (TSO)" | 772 | msgid "Other (TSO)" |
783 | msgstr "Outro (TSO)" | 773 | msgstr "Outro (TSO)" |
784 | 774 | ||
785 | -#: src/dialogs/settings/host.c:142 | 775 | +#: src/dialogs/settings/host.c:141 |
786 | msgid "Other (VM/CMS)" | 776 | msgid "Other (VM/CMS)" |
787 | msgstr "Outro (VM/CMS)" | 777 | msgstr "Outro (VM/CMS)" |
788 | 778 | ||
789 | -#: src/dialogs/settings/host.c:241 | 779 | +#: src/dialogs/settings/host.c:214 |
790 | msgid "Oversize" | 780 | msgid "Oversize" |
791 | msgstr "Oversize" | 781 | msgstr "Oversize" |
792 | 782 | ||
@@ -814,7 +804,7 @@ msgstr "Colar arquivo" | @@ -814,7 +804,7 @@ msgstr "Colar arquivo" | ||
814 | msgid "Paste formatted screen" | 804 | msgid "Paste formatted screen" |
815 | msgstr "Colar tela formatada" | 805 | msgstr "Colar tela formatada" |
816 | 806 | ||
817 | -#: src/dialogs/load.c:249 | 807 | +#: src/dialogs/load.c:243 |
818 | msgid "Paste from file" | 808 | msgid "Paste from file" |
819 | msgstr "Colar de um arquivo" | 809 | msgstr "Colar de um arquivo" |
820 | 810 | ||
@@ -834,11 +824,11 @@ msgstr "Colar tela semelhante" | @@ -834,11 +824,11 @@ msgstr "Colar tela semelhante" | ||
834 | msgid "Path and name of the local file" | 824 | msgid "Path and name of the local file" |
835 | msgstr "Caminho e nome do arquivo local" | 825 | msgstr "Caminho e nome do arquivo local" |
836 | 826 | ||
837 | -#: src/dialogs/settings/host.c:255 | 827 | +#: src/dialogs/settings/host.c:228 |
838 | msgid "Path to XML file with custom charset mapping." | 828 | msgid "Path to XML file with custom charset mapping." |
839 | msgstr "Caminho do arquivo XML com o mapeamento personalizado de caracteres." | 829 | msgstr "Caminho do arquivo XML com o mapeamento personalizado de caracteres." |
840 | 830 | ||
841 | -#: src/dialogs/security.c:138 src/dialogs/security.c:157 | 831 | +#: src/dialogs/security.c:137 src/dialogs/security.c:156 |
842 | msgid "Peer certificate" | 832 | msgid "Peer certificate" |
843 | msgstr "Certificado apresentado" | 833 | msgstr "Certificado apresentado" |
844 | 834 | ||
@@ -846,7 +836,7 @@ msgstr "Certificado apresentado" | @@ -846,7 +836,7 @@ msgstr "Certificado apresentado" | ||
846 | msgid "Pink" | 836 | msgid "Pink" |
847 | msgstr "Rosa" | 837 | msgstr "Rosa" |
848 | 838 | ||
849 | -#: src/dialogs/save/save.c:51 | 839 | +#: src/dialogs/save/save.c:52 |
850 | msgid "Plain text" | 840 | msgid "Plain text" |
851 | msgstr "Texto puro" | 841 | msgstr "Texto puro" |
852 | 842 | ||
@@ -854,7 +844,7 @@ msgstr "Texto puro" | @@ -854,7 +844,7 @@ msgstr "Texto puro" | ||
854 | msgid "Plain text only" | 844 | msgid "Plain text only" |
855 | msgstr "Apenas texto puro" | 845 | msgstr "Apenas texto puro" |
856 | 846 | ||
857 | -#: src/dialogs/settings/host.c:229 | 847 | +#: src/dialogs/settings/url.c:215 |
858 | msgid "Port or service name." | 848 | msgid "Port or service name." |
859 | msgstr "Nº da porta ou nome do serviço." | 849 | msgstr "Nº da porta ou nome do serviço." |
860 | 850 | ||
@@ -890,7 +880,7 @@ msgstr "Imprimir cópia" | @@ -890,7 +880,7 @@ msgstr "Imprimir cópia" | ||
890 | msgid "Print operation failed" | 880 | msgid "Print operation failed" |
891 | msgstr "Operação de impressão falhou" | 881 | msgstr "Operação de impressão falhou" |
892 | 882 | ||
893 | -#: src/dialogs/print/convenience.c:102 | 883 | +#: src/dialogs/print/convenience.c:103 |
894 | msgid "Print operation has failed" | 884 | msgid "Print operation has failed" |
895 | msgstr "Operação de impressão falhou" | 885 | msgstr "Operação de impressão falhou" |
896 | 886 | ||
@@ -938,7 +928,7 @@ msgstr "Receber arquivo" | @@ -938,7 +928,7 @@ msgstr "Receber arquivo" | ||
938 | msgid "Receive text file" | 928 | msgid "Receive text file" |
939 | msgstr "Receber arquivo texto" | 929 | msgstr "Receber arquivo texto" |
940 | 930 | ||
941 | -#: src/filetransfer/v3270ftprogress.c:739 src/dialogs/transfer.c:124 | 931 | +#: src/filetransfer/v3270ftprogress.c:747 src/dialogs/transfer.c:124 |
942 | msgid "Receiving file" | 932 | msgid "Receiving file" |
943 | msgstr "Recebendo arquivo" | 933 | msgstr "Recebendo arquivo" |
944 | 934 | ||
@@ -1001,7 +991,7 @@ msgstr "" | @@ -1001,7 +991,7 @@ msgstr "" | ||
1001 | msgid "Retry" | 991 | msgid "Retry" |
1002 | msgstr "Repetir" | 992 | msgstr "Repetir" |
1003 | 993 | ||
1004 | -#: src/dialogs/security.c:144 | 994 | +#: src/dialogs/security.c:143 |
1005 | msgid "Revocation list" | 995 | msgid "Revocation list" |
1006 | msgstr "Lista de revogados" | 996 | msgstr "Lista de revogados" |
1007 | 997 | ||
@@ -1013,7 +1003,7 @@ msgstr "" | @@ -1013,7 +1003,7 @@ msgstr "" | ||
1013 | "SPACE can be specified in units of TRACKS, CYLINDERS, or AVBLOCK, and only " | 1003 | "SPACE can be specified in units of TRACKS, CYLINDERS, or AVBLOCK, and only " |
1014 | "one option can be used." | 1004 | "one option can be used." |
1015 | 1005 | ||
1016 | -#: src/dialogs/settings/host.c:560 | 1006 | +#: src/dialogs/settings/url.c:264 |
1017 | msgid "SSL/TLS" | 1007 | msgid "SSL/TLS" |
1018 | msgstr "SSL/TLS" | 1008 | msgstr "SSL/TLS" |
1019 | 1009 | ||
@@ -1039,7 +1029,7 @@ msgstr "Salvar _Como" | @@ -1039,7 +1029,7 @@ msgstr "Salvar _Como" | ||
1039 | msgid "Save all" | 1029 | msgid "Save all" |
1040 | msgstr "Salvar tela" | 1030 | msgstr "Salvar tela" |
1041 | 1031 | ||
1042 | -#: src/terminal/actions/table.c:286 src/dialogs/save/save.c:377 | 1032 | +#: src/terminal/actions/table.c:286 src/dialogs/save/save.c:363 |
1043 | msgid "Save copy" | 1033 | msgid "Save copy" |
1044 | msgstr "Salvar cópia" | 1034 | msgstr "Salvar cópia" |
1045 | 1035 | ||
@@ -1059,11 +1049,11 @@ msgstr "Salvar tela ou seleção" | @@ -1059,11 +1049,11 @@ msgstr "Salvar tela ou seleção" | ||
1059 | msgid "Save selected" | 1049 | msgid "Save selected" |
1060 | msgstr "Salvar seleção" | 1050 | msgstr "Salvar seleção" |
1061 | 1051 | ||
1062 | -#: src/terminal/actions/table.c:277 src/dialogs/save/save.c:376 | 1052 | +#: src/terminal/actions/table.c:277 src/dialogs/save/save.c:362 |
1063 | msgid "Save selected area" | 1053 | msgid "Save selected area" |
1064 | msgstr "Salvar área selecionada" | 1054 | msgstr "Salvar área selecionada" |
1065 | 1055 | ||
1066 | -#: src/dialogs/save/save.c:375 | 1056 | +#: src/dialogs/save/save.c:361 |
1067 | msgid "Save terminal contents" | 1057 | msgid "Save terminal contents" |
1068 | msgstr "Salvar conteúdo da tela" | 1058 | msgstr "Salvar conteúdo da tela" |
1069 | 1059 | ||
@@ -1075,7 +1065,7 @@ msgstr "Salvar trace para arquivo" | @@ -1075,7 +1065,7 @@ msgstr "Salvar trace para arquivo" | ||
1075 | msgid "Save transfer activity to file" | 1065 | msgid "Save transfer activity to file" |
1076 | msgstr "Salvar atividade de transferência para arquivo" | 1066 | msgstr "Salvar atividade de transferência para arquivo" |
1077 | 1067 | ||
1078 | -#: src/dialogs/transfer.c:189 | 1068 | +#: src/dialogs/transfer.c:187 |
1079 | msgid "Save transfer information to file" | 1069 | msgid "Save transfer information to file" |
1080 | msgstr "Salvar informações da transferência para arquivo" | 1070 | msgstr "Salvar informações da transferência para arquivo" |
1081 | 1071 | ||
@@ -1115,27 +1105,33 @@ msgstr "" | @@ -1115,27 +1105,33 @@ msgstr "" | ||
1115 | msgid "Secondary space" | 1105 | msgid "Secondary space" |
1116 | msgstr "Secondary space" | 1106 | msgstr "Secondary space" |
1117 | 1107 | ||
1108 | +#: src/dialogs/settings/url.c:220 | ||
1109 | +msgid "Security" | ||
1110 | +msgstr "Segurança" | ||
1111 | + | ||
1112 | +#: src/dialogs/settings/url.c:221 | ||
1113 | +msgid "Security engine" | ||
1114 | +msgstr "Mecanismo de segurança" | ||
1115 | + | ||
1118 | #: src/filetransfer/v3270ft.c:303 src/filetransfer/settings.c:209 | 1116 | #: src/filetransfer/v3270ft.c:303 src/filetransfer/settings.c:209 |
1119 | -#: src/dialogs/save/save.c:98 src/dialogs/save/save.c:118 | ||
1120 | -#: src/dialogs/settings/host.c:402 | 1117 | +#: src/dialogs/settings/host.c:367 |
1121 | msgid "Select" | 1118 | msgid "Select" |
1122 | msgstr "Selecionar" | 1119 | msgstr "Selecionar" |
1123 | 1120 | ||
1124 | -#: src/dialogs/settings/host.c:497 | 1121 | +#: src/dialogs/settings/host.c:452 |
1125 | msgid "Select charset remap file" | 1122 | msgid "Select charset remap file" |
1126 | msgstr "Selecionar arquivo com mapeamento personalizado" | 1123 | msgstr "Selecionar arquivo com mapeamento personalizado" |
1127 | 1124 | ||
1128 | -#: src/dialogs/settings/host.c:398 | 1125 | +#: src/dialogs/settings/host.c:363 |
1129 | msgid "Select custom charset mapping" | 1126 | msgid "Select custom charset mapping" |
1130 | msgstr "Seleciona mapeamento de teclado personalizado" | 1127 | msgstr "Seleciona mapeamento de teclado personalizado" |
1131 | 1128 | ||
1132 | -#: src/dialogs/save/save.c:97 src/dialogs/save/save.c:114 | 1129 | +#: src/dialogs/save/save.c:263 |
1133 | msgid "Select destination file" | 1130 | msgid "Select destination file" |
1134 | msgstr "Selecionar arquivo destino" | 1131 | msgstr "Selecionar arquivo destino" |
1135 | 1132 | ||
1136 | #: src/filetransfer/v3270ft.c:591 src/filetransfer/settings.c:467 | 1133 | #: src/filetransfer/v3270ft.c:591 src/filetransfer/settings.c:467 |
1137 | -#: src/dialogs/load.c:92 src/dialogs/load.c:108 src/dialogs/load.c:171 | ||
1138 | -#: src/dialogs/save/save.c:258 | 1134 | +#: src/dialogs/load.c:186 |
1139 | msgid "Select file" | 1135 | msgid "Select file" |
1140 | msgstr "Selecionar arquivo" | 1136 | msgstr "Selecionar arquivo" |
1141 | 1137 | ||
@@ -1175,10 +1171,14 @@ msgstr "Enviar arquivo" | @@ -1175,10 +1171,14 @@ msgstr "Enviar arquivo" | ||
1175 | msgid "Send text file" | 1171 | msgid "Send text file" |
1176 | msgstr "Enviar arquivo texto" | 1172 | msgstr "Enviar arquivo texto" |
1177 | 1173 | ||
1178 | -#: src/filetransfer/v3270ftprogress.c:739 src/dialogs/transfer.c:124 | 1174 | +#: src/filetransfer/v3270ftprogress.c:747 src/dialogs/transfer.c:124 |
1179 | msgid "Sending file" | 1175 | msgid "Sending file" |
1180 | msgstr "Enviando arquivo" | 1176 | msgstr "Enviando arquivo" |
1181 | 1177 | ||
1178 | +#: src/dialogs/settings/url.c:214 | ||
1179 | +msgid "Service/Port" | ||
1180 | +msgstr "Serviço/Porta" | ||
1181 | + | ||
1182 | #: src/terminal/actions/table.c:241 | 1182 | #: src/terminal/actions/table.c:241 |
1183 | msgid "Set the font to the best size for window" | 1183 | msgid "Set the font to the best size for window" |
1184 | msgstr "Ajusta a fonte para o melhor tamanho" | 1184 | msgstr "Ajusta a fonte para o melhor tamanho" |
@@ -1255,11 +1255,11 @@ msgstr "Iniciar transferência de arquivo" | @@ -1255,11 +1255,11 @@ msgstr "Iniciar transferência de arquivo" | ||
1255 | msgid "Start transfer" | 1255 | msgid "Start transfer" |
1256 | msgstr "Iniciar transferência" | 1256 | msgstr "Iniciar transferência" |
1257 | 1257 | ||
1258 | -#: src/filetransfer/v3270ftprogress.c:790 | 1258 | +#: src/filetransfer/v3270ftprogress.c:798 |
1259 | msgid "Starting" | 1259 | msgid "Starting" |
1260 | msgstr "Iniciando" | 1260 | msgstr "Iniciando" |
1261 | 1261 | ||
1262 | -#: src/filetransfer/worker.c:314 src/dialogs/transfer.c:142 | 1262 | +#: src/filetransfer/worker.c:314 src/dialogs/transfer.c:140 |
1263 | msgid "Starting transfer" | 1263 | msgid "Starting transfer" |
1264 | msgstr "Iniciando transferência" | 1264 | msgstr "Iniciando transferência" |
1265 | 1265 | ||
@@ -1279,22 +1279,26 @@ msgstr "Estado do espaçamento dinâmico" | @@ -1279,22 +1279,26 @@ msgstr "Estado do espaçamento dinâmico" | ||
1279 | msgid "Summary" | 1279 | msgid "Summary" |
1280 | msgstr "Sumário" | 1280 | msgstr "Sumário" |
1281 | 1281 | ||
1282 | -#: src/dialogs/settings/host.c:125 | 1282 | +#: src/dialogs/settings/host.c:124 |
1283 | msgid "System _type" | 1283 | msgid "System _type" |
1284 | msgstr "_Tipo de servidor" | 1284 | msgstr "_Tipo de servidor" |
1285 | 1285 | ||
1286 | -#: src/dialogs/settings/host.c:167 | 1286 | +#: src/dialogs/settings/host.c:166 |
1287 | msgid "System default" | 1287 | msgid "System default" |
1288 | msgstr "Padrão do sistema" | 1288 | msgstr "Padrão do sistema" |
1289 | 1289 | ||
1290 | -#: src/dialogs/settings/host.c:411 | 1290 | +#: src/dialogs/settings/host.c:376 |
1291 | msgid "TN3270 Custom charset" | 1291 | msgid "TN3270 Custom charset" |
1292 | msgstr "Código de página TN3270 personalizado" | 1292 | msgstr "Código de página TN3270 personalizado" |
1293 | 1293 | ||
1294 | -#: src/dialogs/settings/host.c:481 | 1294 | +#: src/dialogs/settings/host.c:440 |
1295 | msgid "TN3270 Emulation settings" | 1295 | msgid "TN3270 Emulation settings" |
1296 | msgstr "Configuração da emulação TN3270" | 1296 | msgstr "Configuração da emulação TN3270" |
1297 | 1297 | ||
1298 | +#: src/dialogs/settings/url.c:122 | ||
1299 | +msgid "TN3270 Host URL" | ||
1300 | +msgstr "URL do servidor TN3270" | ||
1301 | + | ||
1298 | #: src/terminal/properties/init.c:97 | 1302 | #: src/terminal/properties/init.c:97 |
1299 | msgid "TN3270 Session name" | 1303 | msgid "TN3270 Session name" |
1300 | msgstr "Nome da sessão TN3270" | 1304 | msgstr "Nome da sessão TN3270" |
@@ -1308,6 +1312,10 @@ msgstr "Cores do terminal" | @@ -1308,6 +1312,10 @@ msgstr "Cores do terminal" | ||
1308 | msgid "Terminal font" | 1312 | msgid "Terminal font" |
1309 | msgstr "Fonte do terminal" | 1313 | msgstr "Fonte do terminal" |
1310 | 1314 | ||
1315 | +#: src/dialogs/load.c:189 | ||
1316 | +msgid "Text files" | ||
1317 | +msgstr "Arquivos de texto" | ||
1318 | + | ||
1311 | #: src/filetransfer/v3270ftprogress.c:211 | 1319 | #: src/filetransfer/v3270ftprogress.c:211 |
1312 | msgid "" | 1320 | msgid "" |
1313 | "The CMS disk is full, or the maximum number of files on the minidisk (3400) " | 1321 | "The CMS disk is full, or the maximum number of files on the minidisk (3400) " |
@@ -1318,7 +1326,7 @@ msgstr "" | @@ -1318,7 +1326,7 @@ msgstr "" | ||
1318 | "has been reached, or the maximum number of data blocks per file (16060) has " | 1326 | "has been reached, or the maximum number of data blocks per file (16060) has " |
1319 | "been reached." | 1327 | "been reached." |
1320 | 1328 | ||
1321 | -#: src/dialogs/settings/host.c:645 | 1329 | +#: src/dialogs/settings/host.c:561 |
1322 | msgid "The EBCDIC host character set. " | 1330 | msgid "The EBCDIC host character set. " |
1323 | msgstr "A tabela de caracteres EBCDIC." | 1331 | msgstr "A tabela de caracteres EBCDIC." |
1324 | 1332 | ||
@@ -1330,7 +1338,7 @@ msgstr "A etiqueda da ação" | @@ -1330,7 +1338,7 @@ msgstr "A etiqueda da ação" | ||
1330 | msgid "The action tooltip" | 1338 | msgid "The action tooltip" |
1331 | msgstr "Dicas sobre a ação" | 1339 | msgstr "Dicas sobre a ação" |
1332 | 1340 | ||
1333 | -#: src/filetransfer/worker.c:622 | 1341 | +#: src/filetransfer/worker.c:630 |
1334 | msgid "" | 1342 | msgid "" |
1335 | "The callback table for file transfer was rejected, possible version mismatch " | 1343 | "The callback table for file transfer was rejected, possible version mismatch " |
1336 | "on lib3270" | 1344 | "on lib3270" |
@@ -1338,7 +1346,7 @@ msgstr "" | @@ -1338,7 +1346,7 @@ msgstr "" | ||
1338 | "Tabela de callbacks para transferência de arquivos inválida, possível " | 1346 | "Tabela de callbacks para transferência de arquivos inválida, possível " |
1339 | "divergência de versão na lib3270" | 1347 | "divergência de versão na lib3270" |
1340 | 1348 | ||
1341 | -#: src/dialogs/save/save.c:425 | 1349 | +#: src/dialogs/save/save.c:408 |
1342 | #, c-format | 1350 | #, c-format |
1343 | msgid "The file \"%s\" already exists. Replace it?" | 1351 | msgid "The file \"%s\" already exists. Replace it?" |
1344 | msgstr "O arquivo \"%s\" já existe, substituir?" | 1352 | msgstr "O arquivo \"%s\" já existe, substituir?" |
@@ -1366,7 +1374,7 @@ msgstr "O host detectou um erro no arquivo durante a operação de recebimento." | @@ -1366,7 +1374,7 @@ msgstr "O host detectou um erro no arquivo durante a operação de recebimento." | ||
1366 | msgid "The label for the action" | 1374 | msgid "The label for the action" |
1367 | msgstr "A etiqueta da ação" | 1375 | msgstr "A etiqueta da ação" |
1368 | 1376 | ||
1369 | -#: src/dialogs/settings/host.c:182 | 1377 | +#: src/dialogs/settings/host.c:181 |
1370 | msgid "The model of 3270 display to be emulated" | 1378 | msgid "The model of 3270 display to be emulated" |
1371 | msgstr "Modelo de tela 3270 a ser emulada" | 1379 | msgstr "Modelo de tela 3270 a ser emulada" |
1372 | 1380 | ||
@@ -1430,7 +1438,7 @@ msgstr "The type of the state kept by the action" | @@ -1430,7 +1438,7 @@ msgstr "The type of the state kept by the action" | ||
1430 | msgid "There is not enough space available for data on the host." | 1438 | msgid "There is not enough space available for data on the host." |
1431 | msgstr "Não existe espaço suficiente no host para os dados." | 1439 | msgstr "Não existe espaço suficiente no host para os dados." |
1432 | 1440 | ||
1433 | -#: src/dialogs/security.c:193 | 1441 | +#: src/dialogs/security.c:192 |
1434 | msgid "There's no security information in the session" | 1442 | msgid "There's no security information in the session" |
1435 | msgstr "Não existe informação de segurança na sessão" | 1443 | msgstr "Não existe informação de segurança na sessão" |
1436 | 1444 | ||
@@ -1462,11 +1470,11 @@ msgstr "Janela de trace" | @@ -1462,11 +1470,11 @@ msgstr "Janela de trace" | ||
1462 | msgid "Tracks" | 1470 | msgid "Tracks" |
1463 | msgstr "Trilhas" | 1471 | msgstr "Trilhas" |
1464 | 1472 | ||
1465 | -#: src/filetransfer/worker.c:568 src/filetransfer/v3270ftprogress.c:721 | 1473 | +#: src/filetransfer/worker.c:576 src/filetransfer/v3270ftprogress.c:729 |
1466 | msgid "Transfer failed" | 1474 | msgid "Transfer failed" |
1467 | msgstr "Transferência falhou" | 1475 | msgstr "Transferência falhou" |
1468 | 1476 | ||
1469 | -#: src/filetransfer/worker.c:554 | 1477 | +#: src/filetransfer/worker.c:562 |
1470 | msgid "Transfer operation has timed out" | 1478 | msgid "Transfer operation has timed out" |
1471 | msgstr "Operação de transferência esgotou o tempo de espera" | 1479 | msgstr "Operação de transferência esgotou o tempo de espera" |
1472 | 1480 | ||
@@ -1500,7 +1508,7 @@ msgstr "Tente de novo com o mesmo arquivo." | @@ -1500,7 +1508,7 @@ msgstr "Tente de novo com o mesmo arquivo." | ||
1500 | msgid "Turquoise" | 1508 | msgid "Turquoise" |
1501 | msgstr "Turquesa" | 1509 | msgstr "Turquesa" |
1502 | 1510 | ||
1503 | -#: src/dialogs/tools.c:171 | 1511 | +#: src/dialogs/tools.c:167 |
1504 | msgid "UTF-8" | 1512 | msgid "UTF-8" |
1505 | msgstr "UTF-8" | 1513 | msgstr "UTF-8" |
1506 | 1514 | ||
@@ -1513,17 +1521,17 @@ msgstr "Incapaz de colar dados formatados." | @@ -1513,17 +1521,17 @@ msgstr "Incapaz de colar dados formatados." | ||
1513 | msgid "Undefined" | 1521 | msgid "Undefined" |
1514 | msgstr "Indefinido" | 1522 | msgstr "Indefinido" |
1515 | 1523 | ||
1516 | -#: src/terminal/callbacks.c:449 | 1524 | +#: src/terminal/callbacks.c:472 |
1517 | #, c-format | 1525 | #, c-format |
1518 | msgid "Unexpected callback table, the release %s of lib%s is invalid" | 1526 | msgid "Unexpected callback table, the release %s of lib%s is invalid" |
1519 | msgstr "Tabela de callbacks inesperada, a revisão %s da lib%s é inválida" | 1527 | msgstr "Tabela de callbacks inesperada, a revisão %s da lib%s é inválida" |
1520 | 1528 | ||
1521 | -#: src/dialogs/save/save.c:495 | 1529 | +#: src/dialogs/save/save.c:478 |
1522 | #, c-format | 1530 | #, c-format |
1523 | msgid "Unexpected format %d" | 1531 | msgid "Unexpected format %d" |
1524 | msgstr "Formato inesperado %d" | 1532 | msgstr "Formato inesperado %d" |
1525 | 1533 | ||
1526 | -#: src/dialogs/save/save.c:463 src/dialogs/save/save.c:559 | 1534 | +#: src/dialogs/save/save.c:446 src/dialogs/save/save.c:542 |
1527 | #, c-format | 1535 | #, c-format |
1528 | msgid "Unexpected mode %d" | 1536 | msgid "Unexpected mode %d" |
1529 | msgstr "Modo inesperado %d" | 1537 | msgstr "Modo inesperado %d" |
@@ -1533,14 +1541,10 @@ msgstr "Modo inesperado %d" | @@ -1533,14 +1541,10 @@ msgstr "Modo inesperado %d" | ||
1533 | msgid "Unexpected status %d in print operation" | 1541 | msgid "Unexpected status %d in print operation" |
1534 | msgstr "Estado inesperado %d na operação de impressão" | 1542 | msgstr "Estado inesperado %d na operação de impressão" |
1535 | 1543 | ||
1536 | -#: src/dialogs/settings/host.c:559 | 1544 | +#: src/dialogs/settings/url.c:263 |
1537 | msgid "Unsecure" | 1545 | msgid "Unsecure" |
1538 | msgstr "Insegura" | 1546 | msgstr "Insegura" |
1539 | 1547 | ||
1540 | -#: src/dialogs/save/save.c:130 | ||
1541 | -msgid "Untitled document" | ||
1542 | -msgstr "Documento sem título" | ||
1543 | - | ||
1544 | #: src/filetransfer/tables.c:75 | 1548 | #: src/filetransfer/tables.c:75 |
1545 | msgid "Use host default record format." | 1549 | msgid "Use host default record format." |
1546 | msgstr "Utilizar o formato de registro padrão do servidor." | 1550 | msgstr "Utilizar o formato de registro padrão do servidor." |
@@ -1554,7 +1558,7 @@ msgstr "Usar espaço inseparável" | @@ -1554,7 +1558,7 @@ msgstr "Usar espaço inseparável" | ||
1554 | msgid "Variable" | 1558 | msgid "Variable" |
1555 | msgstr "Variável" | 1559 | msgstr "Variável" |
1556 | 1560 | ||
1557 | -#: src/dialogs/tools.c:172 | 1561 | +#: src/dialogs/tools.c:168 |
1558 | msgid "Western Europe (ISO 8859-1)" | 1562 | msgid "Western Europe (ISO 8859-1)" |
1559 | msgstr "Europa ocidental (ISO 8859-1)" | 1563 | msgstr "Europa ocidental (ISO 8859-1)" |
1560 | 1564 | ||
@@ -1591,52 +1595,52 @@ msgstr "" | @@ -1591,52 +1595,52 @@ msgstr "" | ||
1591 | msgid "White" | 1595 | msgid "White" |
1592 | msgstr "Branco" | 1596 | msgstr "Branco" |
1593 | 1597 | ||
1594 | -#: src/dialogs/tools.c:173 | 1598 | +#: src/dialogs/tools.c:169 |
1595 | msgid "Windows Western languages (CP1252)" | 1599 | msgid "Windows Western languages (CP1252)" |
1596 | msgstr "Windows ocidental (CP1252)" | 1600 | msgstr "Windows ocidental (CP1252)" |
1597 | 1601 | ||
1598 | -#: src/terminal/drawing/oia.c:431 src/terminal/drawing/oia.c:455 | ||
1599 | -#: src/terminal/drawing/oia.c:459 | 1602 | +#: src/terminal/drawing/oia.c:490 src/terminal/drawing/oia.c:514 |
1603 | +#: src/terminal/drawing/oia.c:518 | ||
1600 | msgid "X" | 1604 | msgid "X" |
1601 | msgstr "X" | 1605 | msgstr "X" |
1602 | 1606 | ||
1603 | -#: src/terminal/drawing/oia.c:435 | 1607 | +#: src/terminal/drawing/oia.c:494 |
1604 | msgid "X -f" | 1608 | msgid "X -f" |
1605 | msgstr "X -f" | 1609 | msgstr "X -f" |
1606 | 1610 | ||
1607 | -#: src/terminal/drawing/oia.c:467 | 1611 | +#: src/terminal/drawing/oia.c:526 |
1608 | msgid "X Connecting" | 1612 | msgid "X Connecting" |
1609 | msgstr "X Conectando" | 1613 | msgstr "X Conectando" |
1610 | 1614 | ||
1611 | -#: src/terminal/drawing/oia.c:451 | 1615 | +#: src/terminal/drawing/oia.c:510 |
1612 | msgid "X Inhibit" | 1616 | msgid "X Inhibit" |
1613 | msgstr "X Inibido" | 1617 | msgstr "X Inibido" |
1614 | 1618 | ||
1615 | -#: src/terminal/drawing/oia.c:427 | 1619 | +#: src/terminal/drawing/oia.c:486 |
1616 | msgid "X Not Connected" | 1620 | msgid "X Not Connected" |
1617 | msgstr "X Desconectado" | 1621 | msgstr "X Desconectado" |
1618 | 1622 | ||
1619 | -#: src/terminal/drawing/oia.c:443 | 1623 | +#: src/terminal/drawing/oia.c:502 |
1620 | msgid "X Numeric" | 1624 | msgid "X Numeric" |
1621 | msgstr "X Numérico" | 1625 | msgstr "X Numérico" |
1622 | 1626 | ||
1623 | -#: src/terminal/drawing/oia.c:447 | 1627 | +#: src/terminal/drawing/oia.c:506 |
1624 | msgid "X Overflow" | 1628 | msgid "X Overflow" |
1625 | msgstr "X Estouro" | 1629 | msgstr "X Estouro" |
1626 | 1630 | ||
1627 | -#: src/terminal/drawing/oia.c:439 | 1631 | +#: src/terminal/drawing/oia.c:498 |
1628 | msgid "X Protected" | 1632 | msgid "X Protected" |
1629 | msgstr "X Protegido" | 1633 | msgstr "X Protegido" |
1630 | 1634 | ||
1631 | -#: src/terminal/drawing/oia.c:463 | 1635 | +#: src/terminal/drawing/oia.c:522 |
1632 | msgid "X Resolving" | 1636 | msgid "X Resolving" |
1633 | msgstr "X Resolvendo" | 1637 | msgstr "X Resolvendo" |
1634 | 1638 | ||
1635 | -#: src/terminal/drawing/oia.c:415 | 1639 | +#: src/terminal/drawing/oia.c:474 |
1636 | msgid "X System" | 1640 | msgid "X System" |
1637 | msgstr "X Sistema" | 1641 | msgstr "X Sistema" |
1638 | 1642 | ||
1639 | -#: src/terminal/drawing/oia.c:419 | 1643 | +#: src/terminal/drawing/oia.c:478 |
1640 | msgid "X Wait" | 1644 | msgid "X Wait" |
1641 | msgstr "X Aguarde" | 1645 | msgstr "X Aguarde" |
1642 | 1646 | ||
@@ -1739,33 +1743,33 @@ msgstr "Reduzir" | @@ -1739,33 +1743,33 @@ msgstr "Reduzir" | ||
1739 | msgid "_ASCII text" | 1743 | msgid "_ASCII text" |
1740 | msgstr "Texto _ASCII" | 1744 | msgstr "Texto _ASCII" |
1741 | 1745 | ||
1742 | -#: src/dialogs/settings/dialog.c:232 | 1746 | +#: src/dialogs/settings/dialog.c:213 |
1743 | msgid "_Apply" | 1747 | msgid "_Apply" |
1744 | msgstr "_Aplicar" | 1748 | msgstr "_Aplicar" |
1745 | 1749 | ||
1746 | -#: src/selection/linux/paste.c:85 src/dialogs/popups.c:173 | ||
1747 | -#: src/dialogs/load.c:205 src/dialogs/load.c:224 src/dialogs/linux/select.c:51 | 1750 | +#: src/selection/linux/paste.c:85 src/dialogs/popups.c:179 |
1751 | +#: src/dialogs/load.c:214 src/dialogs/linux/select.c:51 | ||
1748 | #: src/dialogs/linux/select.c:77 src/dialogs/print/settingsdialog.c:410 | 1752 | #: src/dialogs/linux/select.c:77 src/dialogs/print/settingsdialog.c:410 |
1749 | -#: src/dialogs/print/settingsdialog.c:429 src/dialogs/save/save.c:342 | ||
1750 | -#: src/dialogs/save/save.c:361 src/dialogs/settings/dialog.c:231 | 1753 | +#: src/dialogs/print/settingsdialog.c:429 src/dialogs/save/save.c:341 |
1754 | +#: src/dialogs/settings/dialog.c:212 | ||
1751 | msgid "_Cancel" | 1755 | msgid "_Cancel" |
1752 | msgstr "_Cancelar" | 1756 | msgstr "_Cancelar" |
1753 | 1757 | ||
1754 | -#: src/dialogs/settings/host.c:644 | 1758 | +#: src/dialogs/settings/host.c:560 |
1755 | msgid "_Charset" | 1759 | msgid "_Charset" |
1756 | msgstr "Tabela de _Caracteres" | 1760 | msgstr "Tabela de _Caracteres" |
1757 | 1761 | ||
1758 | -#: src/trace/tracewindow.c:125 src/dialogs/transfer.c:161 | ||
1759 | -#: src/dialogs/transfer.c:181 src/dialogs/security.c:236 | ||
1760 | -#: src/dialogs/popups.c:104 | 1762 | +#: src/trace/tracewindow.c:125 src/dialogs/transfer.c:159 |
1763 | +#: src/dialogs/transfer.c:179 src/dialogs/security.c:233 | ||
1764 | +#: src/dialogs/popups.c:101 | ||
1761 | msgid "_Close" | 1765 | msgid "_Close" |
1762 | msgstr "_Close" | 1766 | msgstr "_Close" |
1763 | 1767 | ||
1764 | -#: src/dialogs/settings/host.c:153 | 1768 | +#: src/dialogs/settings/host.c:152 |
1765 | msgid "_Color table" | 1769 | msgid "_Color table" |
1766 | msgstr "_Tabela de cores" | 1770 | msgstr "_Tabela de cores" |
1767 | 1771 | ||
1768 | -#: src/tools/entry.c:175 | 1772 | +#: src/tools/entry.c:172 |
1769 | msgid "_Continue" | 1773 | msgid "_Continue" |
1770 | msgstr "_Continuar" | 1774 | msgstr "_Continuar" |
1771 | 1775 | ||
@@ -1773,7 +1777,7 @@ msgstr "_Continuar" | @@ -1773,7 +1777,7 @@ msgstr "_Continuar" | ||
1773 | msgid "_File" | 1777 | msgid "_File" |
1774 | msgstr "_Arquivo" | 1778 | msgstr "_Arquivo" |
1775 | 1779 | ||
1776 | -#: src/dialogs/load.c:163 src/dialogs/save/save.c:250 | 1780 | +#: src/dialogs/load.c:168 src/dialogs/save/save.c:247 |
1777 | msgid "_Filename" | 1781 | msgid "_Filename" |
1778 | msgstr "Nome do _Arquivo" | 1782 | msgstr "Nome do _Arquivo" |
1779 | 1783 | ||
@@ -1781,11 +1785,7 @@ msgstr "Nome do _Arquivo" | @@ -1781,11 +1785,7 @@ msgstr "Nome do _Arquivo" | ||
1781 | msgid "_Font:" | 1785 | msgid "_Font:" |
1782 | msgstr "_Fonte:" | 1786 | msgstr "_Fonte:" |
1783 | 1787 | ||
1784 | -#: src/dialogs/settings/host.c:215 | ||
1785 | -msgid "_Host" | ||
1786 | -msgstr "_Servidor" | ||
1787 | - | ||
1788 | -#: src/dialogs/load.c:210 src/dialogs/load.c:225 | 1788 | +#: src/dialogs/load.c:215 |
1789 | msgid "_Load" | 1789 | msgid "_Load" |
1790 | msgstr "_Carregar" | 1790 | msgstr "_Carregar" |
1791 | 1791 | ||
@@ -1793,16 +1793,16 @@ msgstr "_Carregar" | @@ -1793,16 +1793,16 @@ msgstr "_Carregar" | ||
1793 | msgid "_Local file" | 1793 | msgid "_Local file" |
1794 | msgstr "Arquivo _local:" | 1794 | msgstr "Arquivo _local:" |
1795 | 1795 | ||
1796 | -#: src/dialogs/settings/host.c:181 | 1796 | +#: src/dialogs/settings/host.c:180 |
1797 | msgid "_Model" | 1797 | msgid "_Model" |
1798 | msgstr "_Modelo" | 1798 | msgstr "_Modelo" |
1799 | 1799 | ||
1800 | -#: src/dialogs/popups.c:86 src/dialogs/popups.c:92 src/dialogs/popups.c:98 | ||
1801 | -#: src/dialogs/popups.c:110 | 1800 | +#: src/dialogs/popups.c:83 src/dialogs/popups.c:89 src/dialogs/popups.c:95 |
1801 | +#: src/dialogs/popups.c:107 | ||
1802 | msgid "_Ok" | 1802 | msgid "_Ok" |
1803 | msgstr "_Ok" | 1803 | msgstr "_Ok" |
1804 | 1804 | ||
1805 | -#: src/tools/entry.c:167 | 1805 | +#: src/tools/entry.c:164 |
1806 | msgid "_Open" | 1806 | msgid "_Open" |
1807 | msgstr "_Abrir" | 1807 | msgstr "_Abrir" |
1808 | 1808 | ||
@@ -1818,19 +1818,11 @@ msgstr "_Colar como texto" | @@ -1818,19 +1818,11 @@ msgstr "_Colar como texto" | ||
1818 | msgid "_Remote file" | 1818 | msgid "_Remote file" |
1819 | msgstr "Arquivo _remoto:" | 1819 | msgstr "Arquivo _remoto:" |
1820 | 1820 | ||
1821 | -#: src/trace/tracewindow.c:123 src/dialogs/save/save.c:347 | ||
1822 | -#: src/dialogs/save/save.c:362 src/tools/entry.c:171 | 1821 | +#: src/trace/tracewindow.c:123 src/dialogs/save/save.c:342 |
1822 | +#: src/tools/entry.c:168 | ||
1823 | msgid "_Save" | 1823 | msgid "_Save" |
1824 | msgstr "_Salvar" | 1824 | msgstr "_Salvar" |
1825 | 1825 | ||
1826 | -#: src/dialogs/settings/host.c:545 | ||
1827 | -msgid "_Security" | ||
1828 | -msgstr "_Segurança" | ||
1829 | - | ||
1830 | -#: src/dialogs/settings/host.c:228 | ||
1831 | -msgid "_Service" | ||
1832 | -msgstr "_Serviço" | ||
1833 | - | ||
1834 | #: src/filetransfer/tables.c:43 | 1826 | #: src/filetransfer/tables.c:43 |
1835 | msgid "_Text file" | 1827 | msgid "_Text file" |
1836 | msgstr "Arquivo _texto" | 1828 | msgstr "Arquivo _texto" |
@@ -2366,6 +2358,15 @@ msgstr "Diminui o tamanho da fonte" | @@ -2366,6 +2358,15 @@ msgstr "Diminui o tamanho da fonte" | ||
2366 | #~ msgid "Clear AID key" | 2358 | #~ msgid "Clear AID key" |
2367 | #~ msgstr "Clear AID" | 2359 | #~ msgstr "Clear AID" |
2368 | 2360 | ||
2361 | +#~ msgid "Click to cancel operation" | ||
2362 | +#~ msgstr "Clique para cancelar operação" | ||
2363 | + | ||
2364 | +#~ msgid "Click to load file" | ||
2365 | +#~ msgstr "Clique para carregar arquivo" | ||
2366 | + | ||
2367 | +#~ msgid "Click to save file" | ||
2368 | +#~ msgstr "Clique para salvar arquivo" | ||
2369 | + | ||
2369 | #~ msgid "Color setup" | 2370 | #~ msgid "Color setup" |
2370 | #~ msgstr "Configuração de cores" | 2371 | #~ msgstr "Configuração de cores" |
2371 | 2372 | ||
@@ -2717,9 +2718,6 @@ msgstr "Diminui o tamanho da fonte" | @@ -2717,9 +2718,6 @@ msgstr "Diminui o tamanho da fonte" | ||
2717 | #~ msgid "Host to connect" | 2718 | #~ msgid "Host to connect" |
2718 | #~ msgstr "Servidor a conectar" | 2719 | #~ msgstr "Servidor a conectar" |
2719 | 2720 | ||
2720 | -#~ msgid "Host type name" | ||
2721 | -#~ msgstr "Nome do tipo de host" | ||
2722 | - | ||
2723 | #~ msgid "Hostname syntax error" | 2721 | #~ msgid "Hostname syntax error" |
2724 | #~ msgstr "Formato inválido no nome do servidor" | 2722 | #~ msgstr "Formato inválido no nome do servidor" |
2725 | 2723 | ||
@@ -2998,6 +2996,9 @@ msgstr "Diminui o tamanho da fonte" | @@ -2998,6 +2996,9 @@ msgstr "Diminui o tamanho da fonte" | ||
2998 | #~ "Permitida apenas uma opção dentre TRACKS, CYLINDERS, AVBLOCK: " | 2996 | #~ "Permitida apenas uma opção dentre TRACKS, CYLINDERS, AVBLOCK: " |
2999 | #~ "Transferência cancelada" | 2997 | #~ "Transferência cancelada" |
3000 | 2998 | ||
2999 | +#~ msgid "Open" | ||
3000 | +#~ msgstr "Abrir" | ||
3001 | + | ||
3001 | #~ msgid "Operation failed" | 3002 | #~ msgid "Operation failed" |
3002 | #~ msgstr "Operação falhou" | 3003 | #~ msgstr "Operação falhou" |
3003 | 3004 | ||
@@ -3404,9 +3405,6 @@ msgstr "Diminui o tamanho da fonte" | @@ -3404,9 +3405,6 @@ msgstr "Diminui o tamanho da fonte" | ||
3404 | #~ msgid "Secure connection was successful." | 3405 | #~ msgid "Secure connection was successful." |
3405 | #~ msgstr "Conexão segura efetuada com sucesso." | 3406 | #~ msgstr "Conexão segura efetuada com sucesso." |
3406 | 3407 | ||
3407 | -#~ msgid "Security warning" | ||
3408 | -#~ msgstr "Alerta de segurança" | ||
3409 | - | ||
3410 | #~ msgid "Select Field" | 3408 | #~ msgid "Select Field" |
3411 | #~ msgstr "Selecionar campo" | 3409 | #~ msgstr "Selecionar campo" |
3412 | 3410 | ||
@@ -3572,9 +3570,6 @@ msgstr "Diminui o tamanho da fonte" | @@ -3572,9 +3570,6 @@ msgstr "Diminui o tamanho da fonte" | ||
3572 | #~ msgid "Text file" | 3570 | #~ msgid "Text file" |
3573 | #~ msgstr "Arquivo texto" | 3571 | #~ msgstr "Arquivo texto" |
3574 | 3572 | ||
3575 | -#~ msgid "Text files" | ||
3576 | -#~ msgstr "Arquivos de texto" | ||
3577 | - | ||
3578 | #~ msgid "The CRL has expired." | 3573 | #~ msgid "The CRL has expired." |
3579 | #~ msgstr "A lista de certificados revogados expirou." | 3574 | #~ msgstr "A lista de certificados revogados expirou." |
3580 | 3575 | ||
@@ -4032,6 +4027,9 @@ msgstr "Diminui o tamanho da fonte" | @@ -4032,6 +4027,9 @@ msgstr "Diminui o tamanho da fonte" | ||
4032 | #~ msgid "Unsupported socks 4 proxy" | 4027 | #~ msgid "Unsupported socks 4 proxy" |
4033 | #~ msgstr "Unsupported socks 4 proxy" | 4028 | #~ msgstr "Unsupported socks 4 proxy" |
4034 | 4029 | ||
4030 | +#~ msgid "Untitled document" | ||
4031 | +#~ msgstr "Documento sem título" | ||
4032 | + | ||
4035 | #~ msgid "Uppercase only" | 4033 | #~ msgid "Uppercase only" |
4036 | #~ msgstr "Apenas maiúsculas" | 4034 | #~ msgstr "Apenas maiúsculas" |
4037 | 4035 | ||
@@ -4099,6 +4097,9 @@ msgstr "Diminui o tamanho da fonte" | @@ -4099,6 +4097,9 @@ msgstr "Diminui o tamanho da fonte" | ||
4099 | #~ msgid "_Edit" | 4097 | #~ msgid "_Edit" |
4100 | #~ msgstr "_Editar" | 4098 | #~ msgstr "_Editar" |
4101 | 4099 | ||
4100 | +#~ msgid "_Host" | ||
4101 | +#~ msgstr "_Servidor" | ||
4102 | + | ||
4102 | #~ msgid "_Network" | 4103 | #~ msgid "_Network" |
4103 | #~ msgstr "_Rede" | 4104 | #~ msgstr "_Rede" |
4104 | 4105 |
src/dialogs/settings/host.c
@@ -38,6 +38,7 @@ | @@ -38,6 +38,7 @@ | ||
38 | #include <lib3270/log.h> | 38 | #include <lib3270/log.h> |
39 | #include <lib3270/toggle.h> | 39 | #include <lib3270/toggle.h> |
40 | #include <lib3270/properties.h> | 40 | #include <lib3270/properties.h> |
41 | + #include <v3270/settings/url.h> | ||
41 | 42 | ||
42 | /*--[ Globals ]--------------------------------------------------------------------------------------*/ | 43 | /*--[ Globals ]--------------------------------------------------------------------------------------*/ |
43 | 44 | ||
@@ -52,21 +53,21 @@ | @@ -52,21 +53,21 @@ | ||
52 | { | 53 | { |
53 | { | 54 | { |
54 | .left = 2, | 55 | .left = 2, |
55 | - .top = 2, | 56 | + .top = 3, |
56 | .width = 2, | 57 | .width = 2, |
57 | .grid = CONNECTION, | 58 | .grid = CONNECTION, |
58 | .id = LIB3270_TOGGLE_CONNECT_ON_STARTUP, | 59 | .id = LIB3270_TOGGLE_CONNECT_ON_STARTUP, |
59 | }, | 60 | }, |
60 | { | 61 | { |
61 | .left = 4, | 62 | .left = 4, |
62 | - .top = 2, | 63 | + .top = 3, |
63 | .width = 1, | 64 | .width = 1, |
64 | .grid = CONNECTION, | 65 | .grid = CONNECTION, |
65 | .id = LIB3270_TOGGLE_RECONNECT, | 66 | .id = LIB3270_TOGGLE_RECONNECT, |
66 | }, | 67 | }, |
67 | { | 68 | { |
68 | .left = 5, | 69 | .left = 5, |
69 | - .top = 2, | 70 | + .top = 3, |
70 | .width = 1, | 71 | .width = 1, |
71 | .grid = CONNECTION, | 72 | .grid = CONNECTION, |
72 | .id = LIB3270_TOGGLE_KEEP_ALIVE, | 73 | .id = LIB3270_TOGGLE_KEEP_ALIVE, |
@@ -94,8 +95,6 @@ | @@ -94,8 +95,6 @@ | ||
94 | 95 | ||
95 | enum _entry | 96 | enum _entry |
96 | { | 97 | { |
97 | - ENTRY_HOSTNAME, | ||
98 | - ENTRY_SRVCNAME, | ||
99 | ENTRY_OVERSIZE, | 98 | ENTRY_OVERSIZE, |
100 | ENTRY_REMAP_FILE, | 99 | ENTRY_REMAP_FILE, |
101 | ENTRY_LU_NAMES, | 100 | ENTRY_LU_NAMES, |
@@ -206,32 +205,6 @@ | @@ -206,32 +205,6 @@ | ||
206 | 205 | ||
207 | static const struct EntryFieldDefinition entryfields[] = { | 206 | static const struct EntryFieldDefinition entryfields[] = { |
208 | { | 207 | { |
209 | - .left = 0, | ||
210 | - .top = 0, | ||
211 | - .width = 5, | ||
212 | - .height = 1, | ||
213 | - .grid = CONNECTION, | ||
214 | - | ||
215 | - .label = N_( "_Host" ), | ||
216 | - .tooltip = N_("Address or name of the host to connect."), | ||
217 | - .max_length = 0xFF, | ||
218 | - .width_chars = 50, | ||
219 | - | ||
220 | - }, | ||
221 | - { | ||
222 | - .left = 0, | ||
223 | - .top = 1, | ||
224 | - .width = 1, | ||
225 | - .height = 1, | ||
226 | - .grid = CONNECTION, | ||
227 | - | ||
228 | - .label = N_( "_Service" ), | ||
229 | - .tooltip = N_("Port or service name."), | ||
230 | - .max_length = 6, | ||
231 | - .width_chars = 7, | ||
232 | - }, | ||
233 | - | ||
234 | - { | ||
235 | .top = 1, | 208 | .top = 1, |
236 | .left = 3, | 209 | .left = 3, |
237 | .width = 2, | 210 | .width = 2, |
@@ -258,9 +231,9 @@ | @@ -258,9 +231,9 @@ | ||
258 | }, | 231 | }, |
259 | 232 | ||
260 | { | 233 | { |
261 | - .left = 2, | ||
262 | - .top = 1, | ||
263 | - .width = 3, | 234 | + .left = 0, |
235 | + .top = 2, | ||
236 | + .width = 5, | ||
264 | .height = 1, | 237 | .height = 1, |
265 | .grid = CONNECTION, | 238 | .grid = CONNECTION, |
266 | 239 | ||
@@ -279,12 +252,12 @@ | @@ -279,12 +252,12 @@ | ||
279 | struct | 252 | struct |
280 | { | 253 | { |
281 | GtkEntry * entry[G_N_ELEMENTS(entryfields)]; ///< @brief Entry fields for host & service name. | 254 | GtkEntry * entry[G_N_ELEMENTS(entryfields)]; ///< @brief Entry fields for host & service name. |
282 | - GtkComboBox * ssl; ///< @brief SSL Connection? | ||
283 | GtkComboBox * combos[G_N_ELEMENTS(combos)]; ///< @brief Combo-boxes. | 255 | GtkComboBox * combos[G_N_ELEMENTS(combos)]; ///< @brief Combo-boxes. |
284 | GtkComboBox * charset; ///< @brief Charset combo box. | 256 | GtkComboBox * charset; ///< @brief Charset combo box. |
285 | GtkToggleButton * toggles[G_N_ELEMENTS(toggleList)]; ///< @brief Toggle checks. | 257 | GtkToggleButton * toggles[G_N_ELEMENTS(toggleList)]; ///< @brief Toggle checks. |
286 | GtkSpinButton * auto_disconnect; ///< @brief Auto disconnect. | 258 | GtkSpinButton * auto_disconnect; ///< @brief Auto disconnect. |
287 | GtkSpinButton * unlock_delay; ///< @brief Unlock delay. | 259 | GtkSpinButton * unlock_delay; ///< @brief Unlock delay. |
260 | + GtkWidget * url; ///< @brief The URL entry widget. | ||
288 | 261 | ||
289 | } input; | 262 | } input; |
290 | 263 | ||
@@ -307,7 +280,7 @@ static void update_message(GtkWidget *widget, GtkWidget *terminal) | @@ -307,7 +280,7 @@ static void update_message(GtkWidget *widget, GtkWidget *terminal) | ||
307 | gtk_widget_set_sensitive(widget, lib3270_is_disconnected(v3270_get_session(terminal))); | 280 | gtk_widget_set_sensitive(widget, lib3270_is_disconnected(v3270_get_session(terminal))); |
308 | } | 281 | } |
309 | 282 | ||
310 | -static void V3270HostSelectWidget_class_init(G_GNUC_UNUSED V3270HostSelectWidgetClass *klass) | 283 | +static void V3270HostSelectWidget_class_init(V3270HostSelectWidgetClass *klass) |
311 | { | 284 | { |
312 | V3270SettingsClass * widget = GTK_V3270_SETTINGS_CLASS(klass); | 285 | V3270SettingsClass * widget = GTK_V3270_SETTINGS_CLASS(klass); |
313 | 286 | ||
@@ -339,19 +312,7 @@ static gboolean oversize_validate(GtkEditable *editable) { | @@ -339,19 +312,7 @@ static gboolean oversize_validate(GtkEditable *editable) { | ||
339 | static void update_valid(V3270HostSelectWidget *settings, gboolean valid) { | 312 | static void update_valid(V3270HostSelectWidget *settings, gboolean valid) { |
340 | 313 | ||
341 | if(valid) { | 314 | if(valid) { |
342 | - | ||
343 | - // Check required inputs. | ||
344 | - | ||
345 | - static const int required[] = { ENTRY_HOSTNAME, ENTRY_SRVCNAME }; | ||
346 | - size_t ix; | ||
347 | - | ||
348 | - for(ix = 0; ix < G_N_ELEMENTS(required); ix++) { | ||
349 | - const gchar * chars = gtk_editable_get_chars(GTK_EDITABLE(settings->input.entry[required[ix]]),0,-1); | ||
350 | - if(!*chars) { | ||
351 | - valid = FALSE; | ||
352 | - break; | ||
353 | - } | ||
354 | - } | 315 | + valid = v3270_url_edit_is_valid(settings->input.url); |
355 | } | 316 | } |
356 | 317 | ||
357 | if(valid) { | 318 | if(valid) { |
@@ -362,10 +323,14 @@ static void update_valid(V3270HostSelectWidget *settings, gboolean valid) { | @@ -362,10 +323,14 @@ static void update_valid(V3270HostSelectWidget *settings, gboolean valid) { | ||
362 | 323 | ||
363 | } | 324 | } |
364 | 325 | ||
365 | -static void required_changed(GtkEditable *editable, GtkWidget *settings) { | 326 | +static void url_valid(GtkWidget G_GNUC_UNUSED(*url), gboolean valid, V3270HostSelectWidget *settings) { |
366 | 327 | ||
367 | - const gchar * chars = gtk_editable_get_chars(editable,0,-1); | ||
368 | - update_valid(GTK_V3270HostSelectWidget(settings),(*chars ? TRUE : FALSE)); | 328 | + if(valid) { |
329 | + update_valid(settings,valid); | ||
330 | + return; | ||
331 | + } | ||
332 | + | ||
333 | + v3270_settings_set_valid(GTK_WIDGET(settings),valid); | ||
369 | 334 | ||
370 | } | 335 | } |
371 | 336 | ||
@@ -454,18 +419,12 @@ static void V3270HostSelectWidget_init(V3270HostSelectWidget *widget) | @@ -454,18 +419,12 @@ static void V3270HostSelectWidget_init(V3270HostSelectWidget *widget) | ||
454 | { | 419 | { |
455 | GtkWidget *grids[GRID_COUNT]; | 420 | GtkWidget *grids[GRID_COUNT]; |
456 | 421 | ||
457 | - { | ||
458 | - size_t grid; | 422 | + grids[CONNECTION] = widget->input.url = v3270_url_edit_new(); |
423 | + g_signal_connect(grids[CONNECTION],"valid",G_CALLBACK(url_valid),widget); | ||
459 | 424 | ||
460 | - for(grid = 0; grid < G_N_ELEMENTS(grids); grid++) | ||
461 | - grids[grid] = gtk_grid_new(); | ||
462 | - | ||
463 | - } | 425 | + grids[EMULATION] = gtk_grid_new(); |
464 | 426 | ||
465 | // Connection properties | 427 | // Connection properties |
466 | - gtk_grid_set_row_spacing(GTK_GRID(grids[CONNECTION]),6); | ||
467 | - gtk_grid_set_column_spacing(GTK_GRID(grids[CONNECTION]),12); | ||
468 | - | ||
469 | gtk_grid_attach( | 428 | gtk_grid_attach( |
470 | GTK_GRID(widget), | 429 | GTK_GRID(widget), |
471 | v3270_dialog_section_new(_("Connection"),_("Network connection settings"),grids[CONNECTION]), | 430 | v3270_dialog_section_new(_("Connection"),_("Network connection settings"),grids[CONNECTION]), |
@@ -486,10 +445,6 @@ static void V3270HostSelectWidget_init(V3270HostSelectWidget *widget) | @@ -486,10 +445,6 @@ static void V3270HostSelectWidget_init(V3270HostSelectWidget *widget) | ||
486 | { | 445 | { |
487 | v3270_settings_create_entry_fields(entryfields, G_N_ELEMENTS(entryfields), grids, widget->input.entry); | 446 | v3270_settings_create_entry_fields(entryfields, G_N_ELEMENTS(entryfields), grids, widget->input.entry); |
488 | 447 | ||
489 | - // Custom settings | ||
490 | - // gtk_entry_set_placeholder_text(widget->input.entry[ENTRY_SRVCNAME],"telnet"); | ||
491 | - | ||
492 | - gtk_widget_set_hexpand(GTK_WIDGET(widget->input.entry[ENTRY_HOSTNAME]),TRUE); | ||
493 | gtk_widget_set_hexpand(GTK_WIDGET(widget->input.entry[ENTRY_REMAP_FILE]),TRUE); | 448 | gtk_widget_set_hexpand(GTK_WIDGET(widget->input.entry[ENTRY_REMAP_FILE]),TRUE); |
494 | 449 | ||
495 | gtk_entry_set_icon_from_icon_name(widget->input.entry[ENTRY_REMAP_FILE],GTK_ENTRY_ICON_SECONDARY,"document-open"); | 450 | gtk_entry_set_icon_from_icon_name(widget->input.entry[ENTRY_REMAP_FILE],GTK_ENTRY_ICON_SECONDARY,"document-open"); |
@@ -500,8 +455,6 @@ static void V3270HostSelectWidget_init(V3270HostSelectWidget *widget) | @@ -500,8 +455,6 @@ static void V3270HostSelectWidget_init(V3270HostSelectWidget *widget) | ||
500 | g_signal_connect(G_OBJECT(widget->input.entry[ENTRY_REMAP_FILE]),"changed",G_CALLBACK(remap_file_changed),widget); | 455 | g_signal_connect(G_OBJECT(widget->input.entry[ENTRY_REMAP_FILE]),"changed",G_CALLBACK(remap_file_changed),widget); |
501 | 456 | ||
502 | g_signal_connect(G_OBJECT(widget->input.entry[ENTRY_OVERSIZE]),"changed",G_CALLBACK(oversize_changed),widget); | 457 | g_signal_connect(G_OBJECT(widget->input.entry[ENTRY_OVERSIZE]),"changed",G_CALLBACK(oversize_changed),widget); |
503 | - g_signal_connect(G_OBJECT(widget->input.entry[ENTRY_HOSTNAME]),"changed",G_CALLBACK(required_changed),widget); | ||
504 | - g_signal_connect(G_OBJECT(widget->input.entry[ENTRY_SRVCNAME]),"changed",G_CALLBACK(required_changed),widget); | ||
505 | 458 | ||
506 | } | 459 | } |
507 | 460 | ||
@@ -516,8 +469,8 @@ static void V3270HostSelectWidget_init(V3270HostSelectWidget *widget) | @@ -516,8 +469,8 @@ static void V3270HostSelectWidget_init(V3270HostSelectWidget *widget) | ||
516 | 469 | ||
517 | gtk_spin_button_set_increments(widget->input.auto_disconnect,1,1); | 470 | gtk_spin_button_set_increments(widget->input.auto_disconnect,1,1); |
518 | 471 | ||
519 | - gtk_grid_attach(GTK_GRID(grids[CONNECTION]),label,0,2,1,1); | ||
520 | - gtk_grid_attach(GTK_GRID(grids[CONNECTION]),GTK_WIDGET(widget->input.auto_disconnect),1,2,1,1); | 472 | + gtk_grid_attach(GTK_GRID(grids[CONNECTION]),label,0,3,1,1); |
473 | + gtk_grid_attach(GTK_GRID(grids[CONNECTION]),GTK_WIDGET(widget->input.auto_disconnect),1,3,1,1); | ||
521 | g_signal_connect(G_OBJECT(widget->input.auto_disconnect),"output",G_CALLBACK(spin_format),widget); | 474 | g_signal_connect(G_OBJECT(widget->input.auto_disconnect),"output",G_CALLBACK(spin_format),widget); |
522 | } | 475 | } |
523 | 476 | ||
@@ -540,43 +493,6 @@ static void V3270HostSelectWidget_init(V3270HostSelectWidget *widget) | @@ -540,43 +493,6 @@ static void V3270HostSelectWidget_init(V3270HostSelectWidget *widget) | ||
540 | 493 | ||
541 | } | 494 | } |
542 | 495 | ||
543 | - // SSL input | ||
544 | - { | ||
545 | - GtkWidget *label = gtk_label_new_with_mnemonic(_( "_Security" )); | ||
546 | - gtk_widget_set_halign(label,GTK_ALIGN_END); | ||
547 | - gtk_grid_attach(GTK_GRID(grids[CONNECTION]),label,0,3,1,1); | ||
548 | - | ||
549 | - GtkTreeModel * model = (GtkTreeModel *) gtk_list_store_new(1,G_TYPE_STRING); | ||
550 | - | ||
551 | - widget->input.ssl = GTK_COMBO_BOX(gtk_combo_box_new_with_model(model)); | ||
552 | - | ||
553 | - GtkCellRenderer * text_renderer = gtk_cell_renderer_text_new(); | ||
554 | - gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(widget->input.ssl), text_renderer, TRUE); | ||
555 | - gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(widget->input.ssl), text_renderer, "text", 0, NULL); | ||
556 | - | ||
557 | - static const gchar * levels[] = | ||
558 | - { | ||
559 | - N_("Unsecure"), | ||
560 | - N_("SSL/TLS") | ||
561 | - }; | ||
562 | - | ||
563 | - size_t level; | ||
564 | - for(level = 0; level < G_N_ELEMENTS(levels); level++) | ||
565 | - { | ||
566 | - GtkTreeIter iter; | ||
567 | - gtk_list_store_append((GtkListStore *) model, &iter); | ||
568 | - gtk_list_store_set((GtkListStore *) model, &iter, 0, levels[level], -1); | ||
569 | - }; | ||
570 | - | ||
571 | - /* | ||
572 | - widget->input.ssl = GTK_TOGGLE_BUTTON(gtk_check_button_new_with_mnemonic(_( "_Secure connection." ))); | ||
573 | - gtk_widget_set_tooltip_text(GTK_WIDGET(widget->input.ssl),_( "Check for SSL secure connection." )); | ||
574 | - gtk_widget_set_halign(GTK_WIDGET(widget->input.ssl),GTK_ALIGN_START); | ||
575 | - */ | ||
576 | - | ||
577 | - gtk_grid_attach(GTK_GRID(grids[CONNECTION]),GTK_WIDGET(widget->input.ssl),1,3,2,1); | ||
578 | - } | ||
579 | - | ||
580 | // Toggle checkboxes | 496 | // Toggle checkboxes |
581 | v3270_settings_create_toggle_buttons(toggleList, G_N_ELEMENTS(toggleList), grids, widget->input.toggles); | 497 | v3270_settings_create_toggle_buttons(toggleList, G_N_ELEMENTS(toggleList), grids, widget->input.toggles); |
582 | 498 | ||
@@ -725,20 +641,7 @@ static void apply(GtkWidget *w, GtkWidget *terminal) | @@ -725,20 +641,7 @@ static void apply(GtkWidget *w, GtkWidget *terminal) | ||
725 | H3270 *hSession = v3270_get_session(terminal); | 641 | H3270 *hSession = v3270_get_session(terminal); |
726 | 642 | ||
727 | // Apply URL | 643 | // Apply URL |
728 | - { | ||
729 | - g_autofree gchar * url = | ||
730 | - g_strconcat( | ||
731 | - (gtk_combo_box_get_active(widget->input.ssl) > 0 ? "tn3270s://" : "tn3270://"), | ||
732 | - gtk_entry_get_text(widget->input.entry[ENTRY_HOSTNAME]), | ||
733 | - ":", | ||
734 | - gtk_entry_get_text(widget->input.entry[ENTRY_SRVCNAME]), | ||
735 | - NULL | ||
736 | - ); | ||
737 | - | ||
738 | - debug("URL=[%s]",url); | ||
739 | - lib3270_set_url(hSession,url); | ||
740 | - | ||
741 | - } | 644 | + lib3270_set_url(hSession,v3270_url_edit_get_url(widget->input.url)); |
742 | 645 | ||
743 | // Apply LU names | 646 | // Apply LU names |
744 | v3270_set_lunames(terminal,gtk_entry_get_text(widget->input.entry[ENTRY_LU_NAMES])); | 647 | v3270_set_lunames(terminal,gtk_entry_get_text(widget->input.entry[ENTRY_LU_NAMES])); |
@@ -801,42 +704,7 @@ static void load(GtkWidget *w, GtkWidget *terminal) | @@ -801,42 +704,7 @@ static void load(GtkWidget *w, GtkWidget *terminal) | ||
801 | H3270 *hSession = v3270_get_session(terminal); | 704 | H3270 *hSession = v3270_get_session(terminal); |
802 | V3270HostSelectWidget *widget = GTK_V3270HostSelectWidget(w); | 705 | V3270HostSelectWidget *widget = GTK_V3270HostSelectWidget(w); |
803 | 706 | ||
804 | - const gchar * u = lib3270_get_url(hSession); | ||
805 | - | ||
806 | - if(u) | ||
807 | - { | ||
808 | - | ||
809 | - g_autofree gchar * url = g_strdup(u); | ||
810 | - | ||
811 | - gtk_combo_box_set_active(widget->input.ssl,(g_str_has_prefix(u,"tn3270s") ? 1 : 0)); | ||
812 | -// gtk_toggle_button_set_active(widget->input.ssl,g_str_has_prefix(u,"tn3270s")); | ||
813 | - | ||
814 | - gchar *hostname = strstr(url,"://"); | ||
815 | - if(!hostname) | ||
816 | - { | ||
817 | - g_message("Invalid URL: \"%s\" (no scheme)",url); | ||
818 | - } | ||
819 | - else | ||
820 | - { | ||
821 | - hostname += 3; | ||
822 | - | ||
823 | - gchar *srvcname = strchr(hostname,':'); | ||
824 | - | ||
825 | - if(srvcname) | ||
826 | - { | ||
827 | - *(srvcname++) = 0; | ||
828 | - } | ||
829 | - else | ||
830 | - { | ||
831 | - srvcname = "23"; | ||
832 | - } | ||
833 | - | ||
834 | - gtk_entry_set_text(widget->input.entry[ENTRY_HOSTNAME],hostname); | ||
835 | - gtk_entry_set_text(widget->input.entry[ENTRY_SRVCNAME],srvcname); | ||
836 | - | ||
837 | - } | ||
838 | - | ||
839 | - } | 707 | + v3270_url_edit_set_url(widget->input.url,lib3270_get_url(hSession)); |
840 | 708 | ||
841 | // Load LU names | 709 | // Load LU names |
842 | g_autofree gchar * lunames = v3270_get_lunames(terminal); | 710 | g_autofree gchar * lunames = v3270_get_lunames(terminal); |
@@ -0,0 +1,382 @@ | @@ -0,0 +1,382 @@ | ||
1 | +/* SPDX-License-Identifier: LGPL-3.0-or-later */ | ||
2 | + | ||
3 | +/* | ||
4 | + * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 | ||
5 | + * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a | ||
6 | + * aplicativos mainframe. Registro no INPI sob o nome G3270. | ||
7 | + * | ||
8 | + * Copyright (C) <2008> <Banco do Brasil S.A.> | ||
9 | + * | ||
10 | + * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob | ||
11 | + * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela | ||
12 | + * Free Software Foundation. | ||
13 | + * | ||
14 | + * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER | ||
15 | + * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO | ||
16 | + * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para | ||
17 | + * obter mais detalhes. | ||
18 | + * | ||
19 | + * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este | ||
20 | + * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin | ||
21 | + * St, Fifth Floor, Boston, MA 02110-1301 USA | ||
22 | + * | ||
23 | + * Este programa está nomeado como - e possui - linhas de código. | ||
24 | + * | ||
25 | + * Contatos: | ||
26 | + * | ||
27 | + * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) | ||
28 | + * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça) | ||
29 | + * | ||
30 | + */ | ||
31 | + | ||
32 | + #include "private.h" | ||
33 | + #include "marshal.h" | ||
34 | + #include <v3270/settings/url.h> | ||
35 | + #include <ctype.h> | ||
36 | + | ||
37 | + enum { | ||
38 | + PROP_0, | ||
39 | + PROP_URL | ||
40 | + }; | ||
41 | + | ||
42 | + enum { | ||
43 | + SIGNAL_VALID, | ||
44 | + LAST_SIGNAL | ||
45 | + }; | ||
46 | + | ||
47 | + static guint signals[LAST_SIGNAL] = { 0 }; | ||
48 | + | ||
49 | + struct _V3270URLEdit { | ||
50 | + | ||
51 | + GtkGrid parent; | ||
52 | + | ||
53 | + /// @brief Entry fields | ||
54 | + struct { | ||
55 | + GtkWidget *host; ///< @brief The hostname | ||
56 | + GtkWidget *service; ///< @brief The service/port name | ||
57 | + GtkWidget *ssl; ///< @brief The Security Drop-Down | ||
58 | + } entry; | ||
59 | + | ||
60 | + /// @brief Current URL | ||
61 | + gchar *url; | ||
62 | + | ||
63 | + /// @brief Is the entry valid? | ||
64 | + gboolean isValid; | ||
65 | + | ||
66 | + }; | ||
67 | + | ||
68 | + struct _V3270URLEditClass { | ||
69 | + | ||
70 | + GtkGridClass parent; | ||
71 | + | ||
72 | + GParamSpec *url; | ||
73 | + | ||
74 | + }; | ||
75 | + | ||
76 | + G_DEFINE_TYPE(V3270URLEdit, V3270URLEdit, GTK_TYPE_GRID); | ||
77 | + | ||
78 | + GtkWidget * v3270_url_edit_new() { | ||
79 | + return g_object_new(GTK_TYPE_V3270URLEdit, NULL); | ||
80 | + } | ||
81 | + | ||
82 | + static void finalize(GObject *object) { | ||
83 | + | ||
84 | + V3270URLEdit *edit = GTK_V3270URLEdit(object); | ||
85 | + | ||
86 | + if(edit->url) { | ||
87 | + g_free(edit->url); | ||
88 | + edit->url = NULL; | ||
89 | + } | ||
90 | + | ||
91 | + G_OBJECT_CLASS(V3270URLEdit_parent_class)->finalize(object); | ||
92 | + } | ||
93 | + | ||
94 | + static void set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec G_GNUC_UNUSED(*pspec)) { | ||
95 | + | ||
96 | + switch(prop_id) { | ||
97 | + case PROP_URL: | ||
98 | + v3270_url_edit_set_url(GTK_WIDGET(object),g_value_get_string(value)); | ||
99 | + break; | ||
100 | + } | ||
101 | + } | ||
102 | + | ||
103 | + static void get_property(GObject *object, guint prop_id, GValue *value, GParamSpec G_GNUC_UNUSED(*pspec)) { | ||
104 | + switch(prop_id) { | ||
105 | + case PROP_URL: | ||
106 | + g_value_set_string(value,v3270_url_edit_get_url(GTK_WIDGET(object))); | ||
107 | + break; | ||
108 | + } | ||
109 | + } | ||
110 | + | ||
111 | + static void V3270URLEdit_class_init(V3270URLEditClass *klass) { | ||
112 | + | ||
113 | + GObjectClass *goc = G_OBJECT_CLASS(klass); | ||
114 | + | ||
115 | + goc->finalize = finalize; | ||
116 | + goc->set_property = set_property; | ||
117 | + goc->get_property = get_property; | ||
118 | + | ||
119 | + klass->url = | ||
120 | + g_param_spec_string( | ||
121 | + "url", "url", | ||
122 | + _( "TN3270 Host URL" ), | ||
123 | + lib3270_get_default_host(NULL), | ||
124 | + G_PARAM_READWRITE | ||
125 | + ); | ||
126 | + | ||
127 | + g_object_class_install_property( | ||
128 | + goc, | ||
129 | + PROP_URL, | ||
130 | + klass->url | ||
131 | + ); | ||
132 | + | ||
133 | + signals[SIGNAL_VALID] = | ||
134 | + g_signal_new( | ||
135 | + I_("valid"), | ||
136 | + G_OBJECT_CLASS_TYPE(goc), | ||
137 | + G_SIGNAL_RUN_FIRST, | ||
138 | + 0, | ||
139 | + NULL, NULL, | ||
140 | + v3270_VOID__BOOLEAN, | ||
141 | + G_TYPE_NONE, 1, G_TYPE_BOOLEAN, 0 | ||
142 | + ); | ||
143 | + | ||
144 | + } | ||
145 | + | ||
146 | + static void entry_changed(GtkEntry *entry, V3270URLEdit *widget) { | ||
147 | + | ||
148 | + g_object_notify_by_pspec(G_OBJECT(widget),GTK_V3270URLEdit_GET_CLASS(widget)->url); | ||
149 | + | ||
150 | + gboolean isValid = (gtk_entry_get_text(entry)[0] != 0); | ||
151 | + if(widget->isValid == isValid) { | ||
152 | + return; | ||
153 | + } | ||
154 | + | ||
155 | + if(isValid) { | ||
156 | + | ||
157 | + size_t ix; | ||
158 | + | ||
159 | + // Verify entry-fields | ||
160 | + GtkWidget *widgets[] = { | ||
161 | + widget->entry.host, | ||
162 | + widget->entry.service | ||
163 | + }; | ||
164 | + | ||
165 | + for(ix = 0; ix < G_N_ELEMENTS(widgets); ix++) { | ||
166 | + | ||
167 | + const gchar *str = gtk_entry_get_text(GTK_ENTRY(widgets[ix])); | ||
168 | + while(*str && isspace(*str)) { | ||
169 | + str++; | ||
170 | + } | ||
171 | + | ||
172 | + if(!*str) { | ||
173 | + isValid = FALSE; | ||
174 | + break; | ||
175 | + } | ||
176 | + | ||
177 | + } | ||
178 | + | ||
179 | + } | ||
180 | + | ||
181 | + if(isValid == widget->isValid) { | ||
182 | + return; | ||
183 | + } | ||
184 | + | ||
185 | + debug("The URL box is %s", isValid ? "valid" : "invalid"); | ||
186 | + | ||
187 | + widget->isValid = isValid; | ||
188 | + g_signal_emit(widget, signals[SIGNAL_VALID], 0, isValid); | ||
189 | + | ||
190 | + } | ||
191 | + | ||
192 | + static void V3270URLEdit_init(V3270URLEdit *widget) { | ||
193 | + | ||
194 | + size_t ix; | ||
195 | + | ||
196 | + widget->isValid = FALSE; | ||
197 | + | ||
198 | + // Table of constants. | ||
199 | + static const struct _labels { | ||
200 | + int row; | ||
201 | + int col; | ||
202 | + const char *text; | ||
203 | + const char *tooltip; | ||
204 | + } labels[] = { | ||
205 | + { | ||
206 | + .row = 0, | ||
207 | + .col = 0, | ||
208 | + .text = N_("Hostname"), | ||
209 | + .tooltip = N_("Address or name of the host to connect."), | ||
210 | + }, | ||
211 | + { | ||
212 | + .row = 1, | ||
213 | + .col = 0, | ||
214 | + .text = N_("Service/Port"), | ||
215 | + .tooltip = N_("Port or service name."), | ||
216 | + }, | ||
217 | + { | ||
218 | + .row = 1, | ||
219 | + .col = 2, | ||
220 | + .text = N_("Security"), | ||
221 | + .tooltip = N_("Security engine"), | ||
222 | + } | ||
223 | + }; | ||
224 | + | ||
225 | + // setup grid | ||
226 | + gtk_widget_set_vexpand(GTK_WIDGET(widget),FALSE); | ||
227 | + gtk_grid_set_row_spacing(GTK_GRID(widget),6); | ||
228 | + gtk_grid_set_column_spacing(GTK_GRID(widget),12); | ||
229 | + | ||
230 | + // Create hostname field. | ||
231 | + { | ||
232 | + widget->entry.host = gtk_entry_new(); | ||
233 | + gtk_widget_set_hexpand(widget->entry.host,TRUE); | ||
234 | + gtk_entry_set_width_chars(GTK_ENTRY(widget->entry.host),50); | ||
235 | + gtk_widget_set_tooltip_text(widget->entry.host,g_dgettext(GETTEXT_PACKAGE,labels[0].tooltip)); | ||
236 | + gtk_grid_attach(GTK_GRID(widget),widget->entry.host,1,0,5,1); | ||
237 | + g_signal_connect(widget->entry.host,"changed",G_CALLBACK(entry_changed),widget); | ||
238 | + } | ||
239 | + | ||
240 | + // Create the service/port field. | ||
241 | + { | ||
242 | + widget->entry.service = gtk_entry_new(); | ||
243 | + gtk_widget_set_hexpand(widget->entry.service,FALSE); | ||
244 | + gtk_entry_set_max_length(GTK_ENTRY(widget->entry.service),6); | ||
245 | + gtk_entry_set_width_chars(GTK_ENTRY(widget->entry.service),7); | ||
246 | + gtk_widget_set_tooltip_text(widget->entry.service,g_dgettext(GETTEXT_PACKAGE,labels[1].tooltip)); | ||
247 | + gtk_grid_attach(GTK_GRID(widget),widget->entry.service,1,1,1,1); | ||
248 | + g_signal_connect(widget->entry.service,"changed",G_CALLBACK(entry_changed),widget); | ||
249 | + } | ||
250 | + | ||
251 | + // Create the security dropbox. | ||
252 | + { | ||
253 | + GtkTreeModel * model = (GtkTreeModel *) gtk_list_store_new(1,G_TYPE_STRING); | ||
254 | + widget->entry.ssl = gtk_combo_box_new_with_model(model); | ||
255 | + gtk_widget_set_hexpand(widget->entry.ssl,TRUE); | ||
256 | + | ||
257 | + GtkCellRenderer * text_renderer = gtk_cell_renderer_text_new(); | ||
258 | + gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(widget->entry.ssl), text_renderer, TRUE); | ||
259 | + gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(widget->entry.ssl), text_renderer, "text", 0, NULL); | ||
260 | + | ||
261 | + static const gchar * levels[] = | ||
262 | + { | ||
263 | + N_("Unsecure"), | ||
264 | + N_("SSL/TLS") | ||
265 | + }; | ||
266 | + | ||
267 | + size_t level; | ||
268 | + for(level = 0; level < G_N_ELEMENTS(levels); level++) | ||
269 | + { | ||
270 | + GtkTreeIter iter; | ||
271 | + gtk_list_store_append((GtkListStore *) model, &iter); | ||
272 | + gtk_list_store_set((GtkListStore *) model, &iter, 0, g_dgettext(GETTEXT_PACKAGE,levels[level]), -1); | ||
273 | + }; | ||
274 | + | ||
275 | + gtk_widget_set_tooltip_text(widget->entry.ssl,g_dgettext(GETTEXT_PACKAGE,labels[2].tooltip)); | ||
276 | + gtk_grid_attach(GTK_GRID(widget),widget->entry.ssl,3,1,3,1); | ||
277 | + } | ||
278 | + | ||
279 | + // Create labels. | ||
280 | + { | ||
281 | + | ||
282 | + for(ix = 0; ix < G_N_ELEMENTS(labels);ix++) { | ||
283 | + GtkWidget * label = gtk_label_new(g_dgettext(GETTEXT_PACKAGE,labels[ix].text)); | ||
284 | + gtk_widget_set_halign(label,GTK_ALIGN_END); | ||
285 | + gtk_widget_set_hexpand(label,FALSE); | ||
286 | + gtk_grid_attach(GTK_GRID(widget),label,labels[ix].col,labels[ix].row,1,1); | ||
287 | + gtk_widget_set_tooltip_text(label,g_dgettext(GETTEXT_PACKAGE,labels[ix].tooltip)); | ||
288 | + } | ||
289 | + | ||
290 | + | ||
291 | + } | ||
292 | + | ||
293 | + v3270_url_edit_set_url(GTK_WIDGET(widget),NULL); | ||
294 | + | ||
295 | + } | ||
296 | + | ||
297 | + void v3270_url_edit_set_url(GtkWidget *widget, const gchar *url) { | ||
298 | + | ||
299 | + g_return_if_fail(GTK_IS_V3270URLEdit(widget)); | ||
300 | + V3270URLEdit *edit = GTK_V3270URLEdit(widget); | ||
301 | + | ||
302 | + if(edit->url) { | ||
303 | + g_free(edit->url); | ||
304 | + edit->url = NULL; | ||
305 | + } | ||
306 | + | ||
307 | + if(!(url && *url)) { | ||
308 | + gtk_combo_box_set_active(GTK_COMBO_BOX(edit->entry.ssl),0); | ||
309 | + gtk_entry_set_text(GTK_ENTRY(edit->entry.host),""); | ||
310 | + gtk_entry_set_text(GTK_ENTRY(edit->entry.service),""); | ||
311 | + return; | ||
312 | + } | ||
313 | + | ||
314 | + edit->url = g_strdup(url); | ||
315 | + | ||
316 | + gtk_combo_box_set_active(GTK_COMBO_BOX(edit->entry.ssl),(g_str_has_prefix(edit->url,"tn3270s") ? 1 : 0)); | ||
317 | + | ||
318 | + gchar *hostname = strstr(url,"://"); | ||
319 | + if(!hostname) | ||
320 | + { | ||
321 | + g_message("Invalid URL: \"%s\" (no scheme)",url); | ||
322 | + gtk_entry_set_text(GTK_ENTRY(edit->entry.host),""); | ||
323 | + gtk_entry_set_text(GTK_ENTRY(edit->entry.service),""); | ||
324 | + return; | ||
325 | + } | ||
326 | + | ||
327 | + hostname += 3; | ||
328 | + g_autofree gchar *str = g_strdup(hostname); | ||
329 | + | ||
330 | + gchar *srvcname = strchr(str,':'); | ||
331 | + | ||
332 | + if(srvcname) { | ||
333 | + *(srvcname++) = 0; | ||
334 | + } else { | ||
335 | + srvcname = "3270"; | ||
336 | + } | ||
337 | + | ||
338 | + gtk_entry_set_text(GTK_ENTRY(edit->entry.host),str); | ||
339 | + gtk_entry_set_text(GTK_ENTRY(edit->entry.service),srvcname); | ||
340 | + | ||
341 | + } | ||
342 | + | ||
343 | + const gchar * v3270_url_edit_get_url(GtkWidget *widget) { | ||
344 | + | ||
345 | + g_return_val_if_fail(GTK_IS_V3270URLEdit(widget),NULL); | ||
346 | + V3270URLEdit *edit = GTK_V3270URLEdit(widget); | ||
347 | + | ||
348 | + if(edit->url) { | ||
349 | + return edit->url; | ||
350 | + } | ||
351 | + | ||
352 | + const gchar *host = gtk_entry_get_text(GTK_ENTRY(edit->entry.host)); | ||
353 | + if(!*host) | ||
354 | + return ""; | ||
355 | + | ||
356 | + const gchar *service = gtk_entry_get_text(GTK_ENTRY(edit->entry.service)); | ||
357 | + if(!*service) | ||
358 | + service = "3270"; | ||
359 | + | ||
360 | + edit->url = | ||
361 | + g_strconcat( | ||
362 | + (gtk_combo_box_get_active(GTK_COMBO_BOX(edit->entry.ssl)) > 0 ? "tn3270s://" : "tn3270://"), | ||
363 | + host, | ||
364 | + ":", | ||
365 | + service, | ||
366 | + NULL | ||
367 | + ); | ||
368 | + | ||
369 | + return edit->url; | ||
370 | + } | ||
371 | + | ||
372 | + gboolean v3270_url_edit_is_valid(GtkWidget *widget) { | ||
373 | + g_return_val_if_fail(GTK_IS_V3270URLEdit(widget),FALSE); | ||
374 | + | ||
375 | + V3270URLEdit *edit = GTK_V3270URLEdit(widget); | ||
376 | + | ||
377 | + const gchar *host = gtk_entry_get_text(GTK_ENTRY(edit->entry.host)); | ||
378 | + if(!*host) | ||
379 | + return FALSE; | ||
380 | + | ||
381 | + return TRUE; | ||
382 | + } |
@@ -0,0 +1,59 @@ | @@ -0,0 +1,59 @@ | ||
1 | +/* SPDX-License-Identifier: LGPL-3.0-or-later */ | ||
2 | + | ||
3 | +/* | ||
4 | + * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 | ||
5 | + * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a | ||
6 | + * aplicativos mainframe. Registro no INPI sob o nome G3270. | ||
7 | + * | ||
8 | + * Copyright (C) <2008> <Banco do Brasil S.A.> | ||
9 | + * | ||
10 | + * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob | ||
11 | + * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela | ||
12 | + * Free Software Foundation. | ||
13 | + * | ||
14 | + * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER | ||
15 | + * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO | ||
16 | + * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para | ||
17 | + * obter mais detalhes. | ||
18 | + * | ||
19 | + * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este | ||
20 | + * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin | ||
21 | + * St, Fifth Floor, Boston, MA 02110-1301 USA | ||
22 | + * | ||
23 | + * Este programa está nomeado como - e possui - linhas de código. | ||
24 | + * | ||
25 | + * Contatos: | ||
26 | + * | ||
27 | + * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) | ||
28 | + * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça) | ||
29 | + * | ||
30 | + */ | ||
31 | + | ||
32 | +#ifndef V3270_SETTINGS_URL_H_INCLUDED | ||
33 | + | ||
34 | + #define V3270_SETTINGS_URL_H_INCLUDED | ||
35 | + | ||
36 | + #include <gtk/gtk.h> | ||
37 | + | ||
38 | + /*--[ URL Settings Widget ]--------------------------------------------------------------------------*/ | ||
39 | + | ||
40 | + G_BEGIN_DECLS | ||
41 | + | ||
42 | + #define GTK_TYPE_V3270URLEdit (V3270URLEdit_get_type ()) | ||
43 | + #define GTK_V3270URLEdit(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_V3270URLEdit, V3270URLEdit)) | ||
44 | + #define GTK_V3270URLEdit_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_V3270URLEdit, V3270URLEditClass)) | ||
45 | + #define GTK_IS_V3270URLEdit(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_V3270URLEdit)) | ||
46 | + #define GTK_IS_V3270URLEdit_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_V3270URLEdit)) | ||
47 | + #define GTK_V3270URLEdit_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_V3270URLEdit, V3270URLEditClass)) | ||
48 | + | ||
49 | + typedef struct _V3270URLEdit V3270URLEdit; | ||
50 | + typedef struct _V3270URLEditClass V3270URLEditClass; | ||
51 | + | ||
52 | + GtkWidget * v3270_url_edit_new(); | ||
53 | + void v3270_url_edit_set_url(GtkWidget *widget, const gchar *url); | ||
54 | + const gchar * v3270_url_edit_get_url(GtkWidget *widget); | ||
55 | + gboolean v3270_url_edit_is_valid(GtkWidget *widget); | ||
56 | + | ||
57 | + G_END_DECLS | ||
58 | + | ||
59 | +#endif // V3270_SETTINGS_URL_H_INCLUDED |
src/terminal/drawing/oia.c
@@ -144,7 +144,7 @@ static void setup_cursor_position(GdkRectangle *rect, v3270FontInfo *metrics, ca | @@ -144,7 +144,7 @@ static void setup_cursor_position(GdkRectangle *rect, v3270FontInfo *metrics, ca | ||
144 | rect->width = metrics->width * 8; | 144 | rect->width = metrics->width * 8; |
145 | rect->x -= rect->width; | 145 | rect->x -= rect->width; |
146 | 146 | ||
147 | - if(lib3270_get_toggle(host,LIB3270_TOGGLE_CURSOR_POS)) | 147 | + if(lib3270_get_toggle(host,LIB3270_TOGGLE_CURSOR_POS) && lib3270_is_connected(host)) |
148 | { | 148 | { |
149 | int addr = lib3270_get_cursor_address(host); | 149 | int addr = lib3270_get_cursor_address(host); |
150 | draw_cursor_position(cr,rect,metrics,addr/cols,addr%cols); | 150 | draw_cursor_position(cr,rect,metrics,addr/cols,addr%cols); |
@@ -871,7 +871,7 @@ void v3270_update_cursor(H3270 *session, unsigned short row, unsigned short col, | @@ -871,7 +871,7 @@ void v3270_update_cursor(H3270 *session, unsigned short row, unsigned short col, | ||
871 | v3270_queue_draw_area(GTK_WIDGET(terminal),terminal->cursor.rect.x,0,1,terminal->oia.rect->y-3); | 871 | v3270_queue_draw_area(GTK_WIDGET(terminal),terminal->cursor.rect.x,0,1,terminal->oia.rect->y-3); |
872 | } | 872 | } |
873 | 873 | ||
874 | - if(lib3270_get_toggle(session,LIB3270_TOGGLE_CURSOR_POS)) | 874 | + if(lib3270_get_toggle(session,LIB3270_TOGGLE_CURSOR_POS) && lib3270_is_connected(session)) |
875 | { | 875 | { |
876 | // Update OIA | 876 | // Update OIA |
877 | GdkRectangle * rect; | 877 | GdkRectangle * rect; |
src/terminal/keyboard/accelerator.c
@@ -160,24 +160,24 @@ | @@ -160,24 +160,24 @@ | ||
160 | 160 | ||
161 | switch(accel->type) { | 161 | switch(accel->type) { |
162 | case V3270_ACCELERATOR_TYPE_LIB3270_ACTION: | 162 | case V3270_ACCELERATOR_TYPE_LIB3270_ACTION: |
163 | - debug("%s","V3270_ACCELERATOR_TYPE_LIB3270_ACTION"); | 163 | +// debug("%s","V3270_ACCELERATOR_TYPE_LIB3270_ACTION"); |
164 | description = lib3270_property_get_summary(property); | 164 | description = lib3270_property_get_summary(property); |
165 | break; | 165 | break; |
166 | 166 | ||
167 | case V3270_ACCELERATOR_TYPE_LIB3270_TOGGLE: | 167 | case V3270_ACCELERATOR_TYPE_LIB3270_TOGGLE: |
168 | - debug("%s","V3270_ACCELERATOR_TYPE_LIB3270_TOGGLE"); | 168 | +// debug("%s","V3270_ACCELERATOR_TYPE_LIB3270_TOGGLE"); |
169 | description = lib3270_property_get_summary(property); | 169 | description = lib3270_property_get_summary(property); |
170 | break; | 170 | break; |
171 | 171 | ||
172 | case V3270_ACCELERATOR_TYPE_INTERNAL: | 172 | case V3270_ACCELERATOR_TYPE_INTERNAL: |
173 | - debug("%s","V3270_ACCELERATOR_TYPE_INTERNAL"); | 173 | +// debug("%s","V3270_ACCELERATOR_TYPE_INTERNAL"); |
174 | if(property->summary) | 174 | if(property->summary) |
175 | description = g_dgettext(GETTEXT_PACKAGE,property->summary); | 175 | description = g_dgettext(GETTEXT_PACKAGE,property->summary); |
176 | break; | 176 | break; |
177 | 177 | ||
178 | } | 178 | } |
179 | 179 | ||
180 | - debug("%s=%s",__FUNCTION__,description); | 180 | +// debug("%s=%s",__FUNCTION__,description); |
181 | 181 | ||
182 | if(description && *description) | 182 | if(description && *description) |
183 | return description; | 183 | return description; |
src/terminal/keyboard/keyfile.c
src/terminal/widget.c
@@ -868,20 +868,30 @@ LIB3270_EXPORT GtkIMContext * v3270_get_im_context(GtkWidget *widget) | @@ -868,20 +868,30 @@ LIB3270_EXPORT GtkIMContext * v3270_get_im_context(GtkWidget *widget) | ||
868 | static gboolean bg_emit_save_settings(v3270 *terminal) | 868 | static gboolean bg_emit_save_settings(v3270 *terminal) |
869 | { | 869 | { |
870 | GdkWindow * window = gtk_widget_get_window(GTK_WIDGET(terminal)); | 870 | GdkWindow * window = gtk_widget_get_window(GTK_WIDGET(terminal)); |
871 | - gdk_window_set_cursor( | ||
872 | - window, | ||
873 | - GTK_V3270_GET_CLASS(terminal)->cursors[LIB3270_POINTER_WAITING] | ||
874 | - ); | ||
875 | 871 | ||
876 | - gdk_display_sync(gtk_widget_get_display(GTK_WIDGET(terminal))); | 872 | + if(window) { |
877 | 873 | ||
878 | - terminal->freeze = 0; | ||
879 | - g_signal_emit(terminal,v3270_widget_signal[V3270_SIGNAL_SAVE_SETTINGS], 0, FALSE); | 874 | + gdk_window_set_cursor( |
875 | + window, | ||
876 | + GTK_V3270_GET_CLASS(terminal)->cursors[LIB3270_POINTER_WAITING] | ||
877 | + ); | ||
880 | 878 | ||
881 | - gdk_window_set_cursor( | ||
882 | - window, | ||
883 | - NULL | ||
884 | - ); | 879 | + gdk_display_sync(gtk_widget_get_display(GTK_WIDGET(terminal))); |
880 | + | ||
881 | + terminal->freeze = 0; | ||
882 | + g_signal_emit(terminal,v3270_widget_signal[V3270_SIGNAL_SAVE_SETTINGS], 0, FALSE); | ||
883 | + | ||
884 | + gdk_window_set_cursor( | ||
885 | + window, | ||
886 | + NULL | ||
887 | + ); | ||
888 | + | ||
889 | + } else { | ||
890 | + | ||
891 | + terminal->freeze = 0; | ||
892 | + g_signal_emit(terminal,v3270_widget_signal[V3270_SIGNAL_SAVE_SETTINGS], 0, FALSE); | ||
893 | + | ||
894 | + } | ||
885 | 895 | ||
886 | g_object_unref(terminal); | 896 | g_object_unref(terminal); |
887 | 897 |
v3270.cbp
@@ -121,6 +121,9 @@ | @@ -121,6 +121,9 @@ | ||
121 | <Unit filename="src/dialogs/settings/tools.c"> | 121 | <Unit filename="src/dialogs/settings/tools.c"> |
122 | <Option compilerVar="CC" /> | 122 | <Option compilerVar="CC" /> |
123 | </Unit> | 123 | </Unit> |
124 | + <Unit filename="src/dialogs/settings/url.c"> | ||
125 | + <Option compilerVar="CC" /> | ||
126 | + </Unit> | ||
124 | <Unit filename="src/dialogs/settings/widget.c"> | 127 | <Unit filename="src/dialogs/settings/widget.c"> |
125 | <Option compilerVar="CC" /> | 128 | <Option compilerVar="CC" /> |
126 | </Unit> | 129 | </Unit> |
@@ -197,6 +200,7 @@ | @@ -197,6 +200,7 @@ | ||
197 | <Unit filename="src/include/v3270/security.h" /> | 200 | <Unit filename="src/include/v3270/security.h" /> |
198 | <Unit filename="src/include/v3270/selection.h" /> | 201 | <Unit filename="src/include/v3270/selection.h" /> |
199 | <Unit filename="src/include/v3270/settings.h" /> | 202 | <Unit filename="src/include/v3270/settings.h" /> |
203 | + <Unit filename="src/include/v3270/settings/url.h" /> | ||
200 | <Unit filename="src/include/v3270/toggle.h" /> | 204 | <Unit filename="src/include/v3270/toggle.h" /> |
201 | <Unit filename="src/include/v3270/tools.h" /> | 205 | <Unit filename="src/include/v3270/tools.h" /> |
202 | <Unit filename="src/include/v3270/trace.h" /> | 206 | <Unit filename="src/include/v3270/trace.h" /> |