Commit 944233f3fa1feb1c20449aa22344ea2c062df2c5
1 parent
914ae886
Exists in
master
and in
1 other branch
Small adjustment in copy-as-image.
Updating translation.
Showing
2 changed files
with
75 additions
and
59 deletions
Show diff stats
locale/pt_BR.po
| ... | ... | @@ -5,8 +5,8 @@ msgid "" |
| 5 | 5 | msgstr "" |
| 6 | 6 | "Project-Id-Version: pw3270 5.0\n" |
| 7 | 7 | "Report-Msgid-Bugs-To: \n" |
| 8 | -"POT-Creation-Date: 2020-07-03 12:42-0300\n" | |
| 9 | -"PO-Revision-Date: 2020-07-03 15:04-0300\n" | |
| 8 | +"POT-Creation-Date: 2020-07-06 16:11-0300\n" | |
| 9 | +"PO-Revision-Date: 2020-07-06 16:12-0300\n" | |
| 10 | 10 | "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n" |
| 11 | 11 | "Language-Team: Português <>\n" |
| 12 | 12 | "Language: pt_BR\n" |
| ... | ... | @@ -162,7 +162,7 @@ msgstr "Azul" |
| 162 | 162 | msgid "Bold" |
| 163 | 163 | msgstr "Negrito" |
| 164 | 164 | |
| 165 | -#: src/dialogs/load.c:181 src/dialogs/save/save.c:216 | |
| 165 | +#: src/dialogs/load.c:181 src/dialogs/save/save.c:268 | |
| 166 | 166 | msgid "C_haracter Coding" |
| 167 | 167 | msgstr "C_odificação de caracteres" |
| 168 | 168 | |
| ... | ... | @@ -202,7 +202,7 @@ msgstr "Erro ao converter valor do cgcsid" |
| 202 | 202 | msgid "Can't parse character value" |
| 203 | 203 | msgstr "Erro ao analisar valor de caractere" |
| 204 | 204 | |
| 205 | -#: src/selection/windows/paste.c:79 src/selection/windows/paste.c:119 | |
| 205 | +#: src/selection/linux/paste.c:80 src/selection/linux/paste.c:115 | |
| 206 | 206 | msgid "Can't paste" |
| 207 | 207 | msgstr "Não é possivel colar" |
| 208 | 208 | |
| ... | ... | @@ -211,7 +211,7 @@ msgid "Can't paste text" |
| 211 | 211 | msgstr "Não é possível colar texto" |
| 212 | 212 | |
| 213 | 213 | #: src/filetransfer/save.c:117 src/filetransfer/activitylist.c:436 |
| 214 | -#: src/trace/trace.c:486 src/dialogs/transfer.c:91 src/dialogs/save/save.c:461 | |
| 214 | +#: src/trace/trace.c:486 src/dialogs/transfer.c:91 src/dialogs/save/save.c:627 | |
| 215 | 215 | #, c-format |
| 216 | 216 | msgid "Can't save %s" |
| 217 | 217 | msgstr "Não foi possível salvar arquivo %s" |
| ... | ... | @@ -230,7 +230,7 @@ msgstr "Não foi possível iniciar transferência de arquivo" |
| 230 | 230 | |
| 231 | 231 | #: src/terminal/callbacks.c:396 src/filetransfer/v3270ftprogress.c:433 |
| 232 | 232 | #: src/filetransfer/transfer.c:89 src/dialogs/load.c:111 |
| 233 | -#: src/dialogs/save/save.c:136 src/dialogs/settings/host.c:401 | |
| 233 | +#: src/dialogs/save/save.c:117 src/dialogs/settings/host.c:401 | |
| 234 | 234 | msgid "Cancel" |
| 235 | 235 | msgstr "_Cancelar" |
| 236 | 236 | |
| ... | ... | @@ -246,7 +246,7 @@ msgstr "Marcar para ativar a conexão segura via SSL." |
| 246 | 246 | msgid "Check this if the file consists of character data only." |
| 247 | 247 | msgstr "Marque se o arquivo contem apenas texto." |
| 248 | 248 | |
| 249 | -#: src/dialogs/load.c:206 src/dialogs/save/save.c:268 | |
| 249 | +#: src/dialogs/load.c:206 src/dialogs/save/save.c:343 | |
| 250 | 250 | msgid "Click to cancel operation" |
| 251 | 251 | msgstr "Clique para cancelar operação" |
| 252 | 252 | |
| ... | ... | @@ -254,11 +254,11 @@ msgstr "Clique para cancelar operação" |
| 254 | 254 | msgid "Click to load file" |
| 255 | 255 | msgstr "Clique para carregar arquivo" |
| 256 | 256 | |
| 257 | -#: src/dialogs/save/save.c:273 | |
| 257 | +#: src/dialogs/save/save.c:348 | |
| 258 | 258 | msgid "Click to save file" |
| 259 | 259 | msgstr "Clique para salvar arquivo" |
| 260 | 260 | |
| 261 | -#: src/dialogs/settings/clipboard.c:409 | |
| 261 | +#: src/dialogs/settings/clipboard.c:420 | |
| 262 | 262 | msgid "Clipboard" |
| 263 | 263 | msgstr "Área de transferência" |
| 264 | 264 | |
| ... | ... | @@ -266,7 +266,7 @@ msgstr "Área de transferência" |
| 266 | 266 | msgid "Clipboard name" |
| 267 | 267 | msgstr "Nome da área de transferência" |
| 268 | 268 | |
| 269 | -#: src/dialogs/settings/clipboard.c:408 | |
| 269 | +#: src/dialogs/settings/clipboard.c:419 | |
| 270 | 270 | msgid "Clipboard properties" |
| 271 | 271 | msgstr "Configuração da área de transferência" |
| 272 | 272 | |
| ... | ... | @@ -318,7 +318,7 @@ msgstr "Copiar como texto puro" |
| 318 | 318 | msgid "Copy as table" |
| 319 | 319 | msgstr "Copiar como tabela" |
| 320 | 320 | |
| 321 | -#: src/dialogs/settings/clipboard.c:239 | |
| 321 | +#: src/dialogs/settings/clipboard.c:250 | |
| 322 | 322 | msgid "Copy options" |
| 323 | 323 | msgstr "Opções da cópia" |
| 324 | 324 | |
| ... | ... | @@ -433,6 +433,10 @@ msgstr "Erro" |
| 433 | 433 | msgid "Error on print operation" |
| 434 | 434 | msgstr "Erro na operação de impressão" |
| 435 | 435 | |
| 436 | +#: src/dialogs/save/save.c:579 | |
| 437 | +msgid "Error saving image" | |
| 438 | +msgstr "Erro ao salvar imagem" | |
| 439 | + | |
| 436 | 440 | #: src/filetransfer/tables.c:224 |
| 437 | 441 | msgid "Estimated transfer arrival" |
| 438 | 442 | msgstr "Tempo estimado para a transferência" |
| ... | ... | @@ -441,7 +445,7 @@ msgstr "Tempo estimado para a transferência" |
| 441 | 445 | msgid "Field colors" |
| 442 | 446 | msgstr "Cor dos campos" |
| 443 | 447 | |
| 444 | -#: src/dialogs/save/save.c:230 | |
| 448 | +#: src/dialogs/save/save.c:282 | |
| 445 | 449 | msgid "File _Format" |
| 446 | 450 | msgstr "_Formato do arquivo" |
| 447 | 451 | |
| ... | ... | @@ -524,7 +528,7 @@ msgstr "Cinza" |
| 524 | 528 | msgid "Green" |
| 525 | 529 | msgstr "Verde" |
| 526 | 530 | |
| 527 | -#: src/dialogs/settings/clipboard.c:241 | |
| 531 | +#: src/dialogs/settings/clipboard.c:252 | |
| 528 | 532 | msgid "HTML options" |
| 529 | 533 | msgstr "Opções HTML" |
| 530 | 534 | |
| ... | ... | @@ -568,6 +572,10 @@ msgstr "Ignore" |
| 568 | 572 | msgid "Ignore the fail and remove the file from queue." |
| 569 | 573 | msgstr "Ignore the fail and remove the file from queue." |
| 570 | 574 | |
| 575 | +#: src/dialogs/settings/clipboard.c:173 | |
| 576 | +msgid "Image copy" | |
| 577 | +msgstr "Copiar imagem" | |
| 578 | + | |
| 571 | 579 | #: src/terminal/actions/table.c:196 |
| 572 | 580 | msgid "Increase the font size" |
| 573 | 581 | msgstr "Aumenta o tamanho da fonte" |
| ... | ... | @@ -694,14 +702,18 @@ msgstr "Nenhuma transferência" |
| 694 | 702 | msgid "No transfer in progress" |
| 695 | 703 | msgstr "Nenhuma transferência em andamento" |
| 696 | 704 | |
| 697 | -#: src/dialogs/settings/clipboard.c:306 | |
| 705 | +#: src/dialogs/settings/clipboard.c:317 | |
| 698 | 706 | msgid "None (Don't export color)" |
| 699 | 707 | msgstr "Nenhum (Não exporta cores)" |
| 700 | 708 | |
| 701 | -#: src/dialogs/settings/clipboard.c:426 | |
| 709 | +#: src/dialogs/settings/clipboard.c:437 | |
| 702 | 710 | msgid "None (Don't export font name)" |
| 703 | 711 | msgstr "Nenhuma (Não exporta fontes)" |
| 704 | 712 | |
| 713 | +#: src/selection/linux/paste.c:117 | |
| 714 | +msgid "None of the screens in the clipboard match with the current one." | |
| 715 | +msgstr "Nenhuma das telas da área de transferência corresponde à atual." | |
| 716 | + | |
| 705 | 717 | #: src/dialogs/settings/colors.c:174 |
| 706 | 718 | msgid "Normal/Protected" |
| 707 | 719 | msgstr "Normal/Protegido" |
| ... | ... | @@ -710,7 +722,7 @@ msgstr "Normal/Protegido" |
| 710 | 722 | msgid "Normal/Unprotected" |
| 711 | 723 | msgstr "Normal/Desprotegido" |
| 712 | 724 | |
| 713 | -#: src/selection/windows/paste.c:75 | |
| 725 | +#: src/selection/linux/paste.c:76 | |
| 714 | 726 | msgid "Not the same terminal type" |
| 715 | 727 | msgstr "O tipo de terminal é diferente" |
| 716 | 728 | |
| ... | ... | @@ -802,7 +814,7 @@ msgstr "Colar de um arquivo" |
| 802 | 814 | msgid "Paste from text file" |
| 803 | 815 | msgstr "Colar de um arquivo texto" |
| 804 | 816 | |
| 805 | -#: src/dialogs/settings/clipboard.c:240 | |
| 817 | +#: src/dialogs/settings/clipboard.c:251 | |
| 806 | 818 | msgid "Paste options" |
| 807 | 819 | msgstr "Opções para colar" |
| 808 | 820 | |
| ... | ... | @@ -830,7 +842,7 @@ msgstr "Rosa" |
| 830 | 842 | msgid "Plain text" |
| 831 | 843 | msgstr "Texto puro" |
| 832 | 844 | |
| 833 | -#: src/dialogs/settings/clipboard.c:374 | |
| 845 | +#: src/dialogs/settings/clipboard.c:385 | |
| 834 | 846 | msgid "Plain text only" |
| 835 | 847 | msgstr "Apenas texto puro" |
| 836 | 848 | |
| ... | ... | @@ -987,7 +999,7 @@ msgstr "" |
| 987 | 999 | "SPACE can be specified in units of TRACKS, CYLINDERS, or AVBLOCK, and only " |
| 988 | 1000 | "one option can be used." |
| 989 | 1001 | |
| 990 | -#: src/dialogs/settings/clipboard.c:307 src/dialogs/settings/clipboard.c:427 | |
| 1002 | +#: src/dialogs/settings/clipboard.c:318 src/dialogs/settings/clipboard.c:438 | |
| 991 | 1003 | msgid "Same of the screen" |
| 992 | 1004 | msgstr "Igual ao terminal" |
| 993 | 1005 | |
| ... | ... | @@ -1009,7 +1021,7 @@ msgstr "Salvar _Como" |
| 1009 | 1021 | msgid "Save all" |
| 1010 | 1022 | msgstr "Salvar tela" |
| 1011 | 1023 | |
| 1012 | -#: src/terminal/actions/table.c:262 src/dialogs/save/save.c:302 | |
| 1024 | +#: src/terminal/actions/table.c:262 src/dialogs/save/save.c:377 | |
| 1013 | 1025 | msgid "Save copy" |
| 1014 | 1026 | msgstr "Salvar cópia" |
| 1015 | 1027 | |
| ... | ... | @@ -1029,11 +1041,11 @@ msgstr "Salvar tela ou seleção" |
| 1029 | 1041 | msgid "Save selected" |
| 1030 | 1042 | msgstr "Salvar seleção" |
| 1031 | 1043 | |
| 1032 | -#: src/terminal/actions/table.c:253 src/dialogs/save/save.c:301 | |
| 1044 | +#: src/terminal/actions/table.c:253 src/dialogs/save/save.c:376 | |
| 1033 | 1045 | msgid "Save selected area" |
| 1034 | 1046 | msgstr "Salvar área selecionada" |
| 1035 | 1047 | |
| 1036 | -#: src/dialogs/save/save.c:300 | |
| 1048 | +#: src/dialogs/save/save.c:375 | |
| 1037 | 1049 | msgid "Save terminal contents" |
| 1038 | 1050 | msgstr "Salvar conteúdo da tela" |
| 1039 | 1051 | |
| ... | ... | @@ -1061,7 +1073,7 @@ msgstr "Guarda fila de transferência num arquivo XML externo" |
| 1061 | 1073 | msgid "Save transfer queue to file" |
| 1062 | 1074 | msgstr "Salvar fila de transferências para arquivo" |
| 1063 | 1075 | |
| 1064 | -#: src/dialogs/settings/clipboard.c:375 | |
| 1076 | +#: src/dialogs/settings/clipboard.c:386 | |
| 1065 | 1077 | msgid "Screen with terminal attributes" |
| 1066 | 1078 | msgstr "Completa incluindo atributos do terminal" |
| 1067 | 1079 | |
| ... | ... | @@ -1086,7 +1098,7 @@ msgid "Secondary space" |
| 1086 | 1098 | msgstr "Secondary space" |
| 1087 | 1099 | |
| 1088 | 1100 | #: src/filetransfer/v3270ft.c:303 src/filetransfer/settings.c:209 |
| 1089 | -#: src/dialogs/save/save.c:114 src/dialogs/save/save.c:137 | |
| 1101 | +#: src/dialogs/save/save.c:98 src/dialogs/save/save.c:118 | |
| 1090 | 1102 | #: src/dialogs/settings/host.c:402 |
| 1091 | 1103 | msgid "Select" |
| 1092 | 1104 | msgstr "Selecionar" |
| ... | ... | @@ -1099,13 +1111,13 @@ msgstr "Selecionar arquivo com mapeamento personalizado" |
| 1099 | 1111 | msgid "Select custom charset mapping" |
| 1100 | 1112 | msgstr "Seleciona mapeamento de teclado personalizado" |
| 1101 | 1113 | |
| 1102 | -#: src/dialogs/save/save.c:113 src/dialogs/save/save.c:133 | |
| 1114 | +#: src/dialogs/save/save.c:97 src/dialogs/save/save.c:114 | |
| 1103 | 1115 | msgid "Select destination file" |
| 1104 | 1116 | msgstr "Selecionar arquivo destino" |
| 1105 | 1117 | |
| 1106 | 1118 | #: src/filetransfer/v3270ft.c:591 src/filetransfer/settings.c:467 |
| 1107 | 1119 | #: src/dialogs/load.c:92 src/dialogs/load.c:108 src/dialogs/load.c:171 |
| 1108 | -#: src/dialogs/save/save.c:205 | |
| 1120 | +#: src/dialogs/save/save.c:258 | |
| 1109 | 1121 | msgid "Select file" |
| 1110 | 1122 | msgstr "Selecionar arquivo" |
| 1111 | 1123 | |
| ... | ... | @@ -1318,7 +1330,7 @@ msgstr "" |
| 1318 | 1330 | msgid "The error code was %d" |
| 1319 | 1331 | msgstr "O código de erro foi %d" |
| 1320 | 1332 | |
| 1321 | -#: src/dialogs/save/save.c:415 | |
| 1333 | +#: src/dialogs/save/save.c:425 | |
| 1322 | 1334 | #, c-format |
| 1323 | 1335 | msgid "The file \"%s\" already exists. Replace it?" |
| 1324 | 1336 | msgstr "O arquivo \"%s\" já existe, substituir?" |
| ... | ... | @@ -1480,20 +1492,20 @@ msgstr "Turquesa" |
| 1480 | 1492 | msgid "UTF-8" |
| 1481 | 1493 | msgstr "UTF-8" |
| 1482 | 1494 | |
| 1483 | -#: src/selection/windows/paste.c:115 | |
| 1484 | -msgid "Unable to paste formatted data" | |
| 1485 | -msgstr "Incapaz de colar tela formatada." | |
| 1495 | +#: src/selection/linux/paste.c:116 | |
| 1496 | +msgid "Unable to paste formatted data." | |
| 1497 | +msgstr "Incapaz de colar dados formatados." | |
| 1486 | 1498 | |
| 1487 | 1499 | #: src/filetransfer/tables.c:92 |
| 1488 | 1500 | msgid "Undefined" |
| 1489 | 1501 | msgstr "Indefinido" |
| 1490 | 1502 | |
| 1491 | -#: src/dialogs/save/save.c:400 | |
| 1503 | +#: src/dialogs/save/save.c:495 | |
| 1492 | 1504 | #, c-format |
| 1493 | 1505 | msgid "Unexpected format %d" |
| 1494 | 1506 | msgstr "Formato inesperado %d" |
| 1495 | 1507 | |
| 1496 | -#: src/dialogs/save/save.c:370 | |
| 1508 | +#: src/dialogs/save/save.c:463 src/dialogs/save/save.c:559 | |
| 1497 | 1509 | #, c-format |
| 1498 | 1510 | msgid "Unexpected mode %d" |
| 1499 | 1511 | msgstr "Modo inesperado %d" |
| ... | ... | @@ -1503,7 +1515,7 @@ msgstr "Modo inesperado %d" |
| 1503 | 1515 | msgid "Unexpected status %d in print operation" |
| 1504 | 1516 | msgstr "Estado inesperado %d na operação de impressão" |
| 1505 | 1517 | |
| 1506 | -#: src/dialogs/windows/select.c:169 src/dialogs/save/save.c:149 | |
| 1518 | +#: src/dialogs/save/save.c:130 | |
| 1507 | 1519 | msgid "Untitled document" |
| 1508 | 1520 | msgstr "Documento sem título" |
| 1509 | 1521 | |
| ... | ... | @@ -1524,6 +1536,10 @@ msgstr "Variável" |
| 1524 | 1536 | msgid "Western Europe (ISO 8859-1)" |
| 1525 | 1537 | msgstr "Europa ocidental (ISO 8859-1)" |
| 1526 | 1538 | |
| 1539 | +#: src/dialogs/settings/clipboard.c:174 | |
| 1540 | +msgid "When set allow image formats on clipboard" | |
| 1541 | +msgstr "Quando ativo permite imagens na área de transferência" | |
| 1542 | + | |
| 1527 | 1543 | #: src/dialogs/settings/clipboard.c:154 |
| 1528 | 1544 | msgid "" |
| 1529 | 1545 | "When set search clipboard for a similar screen, if found paste unprotected " |
| ... | ... | @@ -1705,11 +1721,11 @@ msgstr "Texto _ASCII" |
| 1705 | 1721 | msgid "_Apply" |
| 1706 | 1722 | msgstr "_Aplicar" |
| 1707 | 1723 | |
| 1708 | -#: src/selection/windows/paste.c:83 src/selection/windows/paste.c:123 | |
| 1709 | -#: src/dialogs/load.c:205 src/dialogs/load.c:224 | |
| 1710 | -#: src/dialogs/windows/select.c:158 src/dialogs/print/settingsdialog.c:410 | |
| 1711 | -#: src/dialogs/print/settingsdialog.c:429 src/dialogs/save/save.c:267 | |
| 1712 | -#: src/dialogs/save/save.c:286 src/dialogs/settings/dialog.c:231 | |
| 1724 | +#: src/selection/linux/paste.c:84 src/selection/linux/paste.c:118 | |
| 1725 | +#: src/dialogs/load.c:205 src/dialogs/load.c:224 src/dialogs/linux/select.c:51 | |
| 1726 | +#: src/dialogs/linux/select.c:77 src/dialogs/print/settingsdialog.c:410 | |
| 1727 | +#: src/dialogs/print/settingsdialog.c:429 src/dialogs/save/save.c:342 | |
| 1728 | +#: src/dialogs/save/save.c:361 src/dialogs/settings/dialog.c:231 | |
| 1713 | 1729 | msgid "_Cancel" |
| 1714 | 1730 | msgstr "_Cancelar" |
| 1715 | 1731 | |
| ... | ... | @@ -1730,7 +1746,7 @@ msgstr "_Tabela de cores" |
| 1730 | 1746 | msgid "_File" |
| 1731 | 1747 | msgstr "_Arquivo" |
| 1732 | 1748 | |
| 1733 | -#: src/dialogs/load.c:163 src/dialogs/save/save.c:192 | |
| 1749 | +#: src/dialogs/load.c:163 src/dialogs/save/save.c:250 | |
| 1734 | 1750 | msgid "_Filename" |
| 1735 | 1751 | msgstr "Nome do _Arquivo" |
| 1736 | 1752 | |
| ... | ... | @@ -1758,7 +1774,7 @@ msgstr "_Modelo" |
| 1758 | 1774 | msgid "_Operation" |
| 1759 | 1775 | msgstr "_Operação:" |
| 1760 | 1776 | |
| 1761 | -#: src/selection/windows/paste.c:84 src/selection/windows/paste.c:124 | |
| 1777 | +#: src/selection/linux/paste.c:85 src/selection/linux/paste.c:119 | |
| 1762 | 1778 | msgid "_Paste as text" |
| 1763 | 1779 | msgstr "_Colar como texto" |
| 1764 | 1780 | |
| ... | ... | @@ -1766,8 +1782,8 @@ msgstr "_Colar como texto" |
| 1766 | 1782 | msgid "_Remote file" |
| 1767 | 1783 | msgstr "Arquivo _remoto:" |
| 1768 | 1784 | |
| 1769 | -#: src/trace/tracewindow.c:123 src/dialogs/save/save.c:272 | |
| 1770 | -#: src/dialogs/save/save.c:287 | |
| 1785 | +#: src/trace/tracewindow.c:123 src/dialogs/save/save.c:347 | |
| 1786 | +#: src/dialogs/save/save.c:362 | |
| 1771 | 1787 | msgid "_Save" |
| 1772 | 1788 | msgstr "_Salvar" |
| 1773 | 1789 | |
| ... | ... | @@ -2511,9 +2527,6 @@ msgstr "Diminui o tamanho da fonte" |
| 2511 | 2527 | #~ msgid "Error in ioctl(%s) when setting no blocking mode" |
| 2512 | 2528 | #~ msgstr "Erro em ioctl(%s) ao ativar o modo não blocante" |
| 2513 | 2529 | |
| 2514 | -#~ msgid "Error loading %s" | |
| 2515 | -#~ msgstr "Erro lendo %s" | |
| 2516 | - | |
| 2517 | 2530 | #~ msgid "Error loading CRL" |
| 2518 | 2531 | #~ msgstr "Erro lendo CRL" |
| 2519 | 2532 | |
| ... | ... | @@ -2927,9 +2940,6 @@ msgstr "Diminui o tamanho da fonte" |
| 2927 | 2940 | #~ msgid "Non zero if the host is TSO." |
| 2928 | 2941 | #~ msgstr "Diferente de zero se o host é TSO" |
| 2929 | 2942 | |
| 2930 | -#~ msgid "None of the screens in the clipboard match with the current one." | |
| 2931 | -#~ msgstr "Nenhuma das telas da área de transferência corresponde à atual." | |
| 2932 | - | |
| 2933 | 2943 | #~ msgid "Not available" |
| 2934 | 2944 | #~ msgstr "Não disponível" |
| 2935 | 2945 | ... | ... |
src/selection/pixbuf.c
| ... | ... | @@ -38,24 +38,27 @@ GdkPixbuf * v3270_get_selection_as_pixbuf(v3270 * terminal, const GList *selecti |
| 38 | 38 | const GList *selection; |
| 39 | 39 | |
| 40 | 40 | // Get image size |
| 41 | - size_t rows = 0, cols = 0; | |
| 41 | + size_t rows = 0, from_col = 1000, to_col = 0; | |
| 42 | 42 | |
| 43 | 43 | for(selection = selections; selection; selection = g_list_next(selection)) |
| 44 | 44 | { |
| 45 | 45 | lib3270_selection * block = ((lib3270_selection *) selection->data); |
| 46 | - unsigned int row, col, src = 0; | |
| 46 | + unsigned int row, src = 0; | |
| 47 | 47 | |
| 48 | 48 | for(row=0; row < block->bounds.height; row++) |
| 49 | 49 | { |
| 50 | 50 | size_t hasSelection = FALSE; |
| 51 | + unsigned int col; | |
| 51 | 52 | |
| 52 | 53 | for(col=0; col<block->bounds.width; col++) |
| 53 | 54 | { |
| 54 | 55 | if( (block->contents[src].attribute.visual & LIB3270_ATTR_SELECTED) || all ) |
| 55 | 56 | { |
| 56 | 57 | hasSelection = TRUE; |
| 57 | - if(col > cols) | |
| 58 | - cols = col; | |
| 58 | + if(col < from_col) | |
| 59 | + from_col = col; | |
| 60 | + if(col > to_col) | |
| 61 | + to_col = col; | |
| 59 | 62 | } |
| 60 | 63 | src++; |
| 61 | 64 | } |
| ... | ... | @@ -69,22 +72,24 @@ GdkPixbuf * v3270_get_selection_as_pixbuf(v3270 * terminal, const GList *selecti |
| 69 | 72 | |
| 70 | 73 | } |
| 71 | 74 | |
| 72 | - debug("%s: rows=%d cols=%d",__FUNCTION__,rows,cols); | |
| 75 | + debug("Selection rows=%u cols=%u",(unsigned int) rows, (unsigned int) (to_col - from_col)); | |
| 73 | 76 | |
| 74 | - if(!rows) | |
| 77 | + if(!(rows || (from_col > to_col))) | |
| 75 | 78 | return NULL; |
| 76 | 79 | |
| 77 | - debug("Selection rows=%u cols=%u",(unsigned int) rows, (unsigned int) cols); | |
| 78 | - | |
| 79 | - gint width = (cols+1) * terminal->font.width; | |
| 80 | - gint height = (rows+1) * terminal->font.spacing.value; | |
| 80 | + gint width = ((to_col - from_col)+1) * terminal->font.width; | |
| 81 | + gint height = rows * terminal->font.spacing.value; | |
| 81 | 82 | |
| 82 | 83 | debug("%s: width=%d height=%d",__FUNCTION__,width,height); |
| 83 | 84 | |
| 84 | 85 | cairo_surface_t *surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, width, height); |
| 85 | 86 | |
| 86 | 87 | cairo_t *cr = cairo_create(surface); |
| 88 | +#ifdef DEBUG | |
| 89 | + gdk_cairo_set_source_rgba(cr,terminal->color+V3270_COLOR_BLUE); | |
| 90 | +#else | |
| 87 | 91 | gdk_cairo_set_source_rgba(cr,terminal->color+V3270_COLOR_BACKGROUND); |
| 92 | +#endif // DEBUG | |
| 88 | 93 | cairo_rectangle(cr, 0, 0, width, height); |
| 89 | 94 | cairo_fill(cr); |
| 90 | 95 | cairo_stroke(cr); |
| ... | ... | @@ -107,7 +112,8 @@ GdkPixbuf * v3270_get_selection_as_pixbuf(v3270 * terminal, const GList *selecti |
| 107 | 112 | size_t hasSelection = FALSE; |
| 108 | 113 | rect.x = 0; |
| 109 | 114 | |
| 110 | - for(col=0; col<block->bounds.width; col++) | |
| 115 | + src += from_col; | |
| 116 | + for(col=from_col; col<block->bounds.width; col++) | |
| 111 | 117 | { |
| 112 | 118 | if( (block->contents[src].attribute.visual & LIB3270_ATTR_SELECTED) || all ) |
| 113 | 119 | { | ... | ... |