Commit 1615ec901b1ebb23383b2157e2d43969a462d014

Authored by Perry Werneck
2 parents f10be70a a5c615f2

Merge branch 'develop'

.gitignore
... ... @@ -59,3 +59,4 @@ gschemas.compiled
59 59 *.gschema.xml
60 60 *.3270
61 61 macos/**/*.app
  62 +mime.xml
... ...
Makefile.in
... ... @@ -27,7 +27,6 @@
27 27 #---[ Configuration ]--------------------------------------------------------------------
28 28  
29 29 PACKAGE_NAME=@PACKAGE_NAME@
30   -PACKAGE_TARNAME=@PACKAGE_TARNAME@
31 30 PRODUCT_NAME=@PRODUCT_NAME@
32 31  
33 32 SOURCES= \
... ... @@ -134,7 +133,7 @@ $(OBJDBG)/%.o: \
134 133  
135 134 $(OBJDBG)/%.o: \
136 135 %.rc \
137   - $(PACKAGE_TARNAME).ico
  136 + $(PRODUCT_NAME).ico
138 137  
139 138 @echo $< ...
140 139 @$(MKDIR) $(@D)
... ... @@ -162,7 +161,7 @@ $(OBJRLS)/%.o: \
162 161  
163 162 $(OBJRLS)/%.o: \
164 163 %.rc \
165   - $(PACKAGE_TARNAME).ico
  164 + $(PRODUCT_NAME).ico
166 165  
167 166 @echo $< ...
168 167 @$(MKDIR) $(@D)
... ... @@ -255,7 +254,7 @@ $(BINRLS)/$(PACKAGE_NAME)@EXEEXT@: \
255 254 @echo $< ...
256 255 @$(LD) \
257 256 -o $@ \
258   - $(LDFLAGS) \
  257 + $(LDFLAGS) @RLS_LDFLAGS@ \
259 258 $^ \
260 259 $(LIBS)
261 260  
... ... @@ -363,7 +362,7 @@ clean: \
363 362 @rm -fr $(BASEDIR)/.tmp/$(PACKAGE_NAME)
364 363 @rm -fr $(POTDIR)/$(PACKAGE_NAME)
365 364 @rm -fr src/include/marshal
366   - @rm -f $(PACKAGE_TARNAME).ico
  365 + @rm -f $(PRODUCT_NAME).ico
367 366  
368 367 cleanDebug:
369 368  
... ...
branding/Makefile.in
... ... @@ -32,9 +32,9 @@ PRODUCT_NAME=@PRODUCT_NAME@
32 32 prefix=@prefix@
33 33 exec_prefix=@exec_prefix@
34 34 datarootdir=@datarootdir@
  35 +bindir=@bindir@
35 36  
36 37 BASEDIR=@BASEDIR@
37   -SRCDIR=$(BASEDIR)/.src/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION)/branding
38 38 BINDIR=$(BASEDIR)/.bin
39 39  
40 40 MKDIR=@MKDIR_P@
... ... @@ -52,7 +52,13 @@ $(BINDIR)/%.png: \
52 52  
53 53 @echo $@ ...
54 54 @$(MKDIR) `dirname $@`
55   - @$(CONVERT) -strip -background transparent $< $@
  55 +
  56 + @$(CONVERT) \
  57 + -strip \
  58 + -background transparent \
  59 + $< \
  60 + $@
  61 +
56 62 ifeq ($(OPTIPNG),no)
57 63 @chmod 644 $@
58 64 else
... ... @@ -60,35 +66,29 @@ else
60 66 endif
61 67  
62 68 $(BINDIR)/%.png: \
63   - $(PACKAGE_TARNAME).svg
  69 + $(PRODUCT_NAME).svg
64 70  
65 71 @echo $@ ...
66 72 @$(MKDIR) `dirname $@`
67   - @$(CONVERT) -strip -background transparent $< $@
  73 + @$(CONVERT) \
  74 + -strip \
  75 + -background transparent \
  76 + $< \
  77 + $@
  78 +
68 79 ifeq ($(OPTIPNG),no)
69 80 @chmod 644 $@
70 81 else
71 82 @$(OPTIPNG) -o7 $@
72 83 endif
73 84  
74   -$(BINDIR)/%.ico: \
75   - %.svg
76   -
77   - @echo $@ ...
78   - @$(MKDIR) `dirname $@`
79   - @$(CONVERT) -density 384 -background transparent $< -define icon:auto-resize -colors 256 $@
80   -
81   -$(BINDIR)/%.ico: \
82   - $(PACKAGE_TARNAME).svg
  85 +%.ico: \
  86 + $(PRODUCT_NAME).svg
83 87  
84 88 @echo $@ ...
85 89 @$(MKDIR) `dirname $@`
86 90 @$(CONVERT) -density 384 -background transparent $< -define icon:auto-resize -colors 256 $@
87 91  
88   -$(SRCDIR):
89   - @$(MKDIR) $@
90   - @$(INSTALL_DATA) $(PACKAGE_NAME).svg $(PACKAGE_NAME)-logo.svg *.in $@
91   -
92 92 $(BINDIR)/%.png: \
93 93 %.png
94 94  
... ... @@ -115,6 +115,9 @@ $(DESTDIR)$(datarootdir)/pixmaps/%.png: \
115 115 @$(INSTALL_DATA) $< $@
116 116  
117 117 install: \
  118 + install-@OSNAME@
  119 +
  120 +install-linux: \
118 121 $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME).png \
119 122 $(DESTDIR)$(datarootdir)/pixmaps/$(PRODUCT_NAME).png \
120 123 $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME)-logo.png
... ... @@ -129,4 +132,15 @@ install: \
129 132 --dir $(DESTDIR)$(datarootdir)/applications \
130 133 $(PRODUCT_NAME).desktop
131 134  
  135 + @$(MKDIR) $(DESTDIR)$(datarootdir)/mime/packages
  136 +
  137 + @$(INSTALL_DATA) \
  138 + mime.xml \
  139 + $(DESTDIR)$(datarootdir)/mime/packages/$(PRODUCT_NAME).xml
  140 +
  141 +install-windows: \
  142 + $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME).png \
  143 + $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME)-logo.png \
  144 + $(DESTDIR)$(bindir)/$(PRODUCT_NAME).ico
  145 +
132 146  
... ...
branding/launcher.desktop.in
... ... @@ -10,7 +10,7 @@ Terminal=false
10 10 Type=Application
11 11 StartupNotify=true
12 12  
13   -MimeType=x-scheme-handler/tn3270s;x-scheme-handler/tn3270;
  13 +MimeType=x-scheme-handler/tn3270s;x-scheme-handler/tn3270;application/x-@PRODUCT_NAME@;
14 14  
15 15 Actions=gnomeui;classicalui
16 16  
... ...
branding/mime.xml.in 0 → 100644
... ... @@ -0,0 +1,13 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
  3 + <mime-type type="application/x-pw3270">
  4 + <sub-class-of type="application/xml"/>
  5 + <comment>@PRODUCT_NAME@ Session file</comment>
  6 + <comment xml:lang="pt_BR">Arquivo sessão para @PRODUCT_NAME@</comment>
  7 + <magic priority="80">
  8 + <match value="@PRODUCT_NAME@settings" type="string" offset="0:50"/>
  9 + </magic>
  10 + <generic-icon name="@PRODUCT_NAME@"/>
  11 + <glob pattern="*.3270"/>
  12 + </mime-type>
  13 +</mime-info>
... ...
configure.ac
... ... @@ -63,6 +63,7 @@ dnl ---------------------------------------------------------------------------
63 63 case "$host" in
64 64 *-mingw32|*-pc-msys)
65 65 app_cv_osname="windows"
  66 + app_rls_ldflags="-mwindows"
66 67  
67 68 CFLAGS="$CFLAGS -pthread -D_WIN32_WINNT=0x0600"
68 69 LDFLAGS="$LDFLAGS -pthread"
... ... @@ -71,6 +72,7 @@ case &quot;$host&quot; in
71 72 app_win32_revision=$(date +%-y.%-m.%-d.%-H)
72 73 AC_SUBST(WIN32_VERSION,$app_win32_revision)
73 74  
  75 +
74 76 app_win32_file_version=$(date +%-y,%-m,%-d,%-H)
75 77 AC_SUBST(WIN32_FILE_VERSION,$app_win32_file_version)
76 78  
... ... @@ -100,6 +102,7 @@ case &quot;$host&quot; in
100 102  
101 103 *)
102 104 app_cv_osname="linux"
  105 + app_rls_ldflags=""
103 106  
104 107 CFLAGS="$CFLAGS -pthread -DLIBDIR=\$(libdir)"
105 108 LDFLAGS="$LDFLAGS -pthread"
... ... @@ -113,6 +116,7 @@ case &quot;$host&quot; in
113 116 esac
114 117  
115 118 AC_SUBST(OSNAME,$app_cv_osname)
  119 +AC_SUBST(RLS_LDFLAGS,$app_rls_ldflags)
116 120 AC_SUBST(LIBS)
117 121 AC_SUBST(LOGDIR)
118 122 AC_SUBST(DLLEXT)
... ... @@ -206,7 +210,13 @@ AC_ARG_ENABLE([pie],
206 210 [
207 211 app_cv_pie="$enableval"
208 212 ],[
209   - app_cv_pie="yes"
  213 +
  214 + if test "$app_cv_osname" == "linux"; then
  215 + app_cv_pie="yes"
  216 + else
  217 + app_cv_pie="no"
  218 + fi
  219 +
210 220 ])
211 221  
212 222 if test "$app_cv_pie" == "yes"; then
... ... @@ -234,6 +244,7 @@ AC_CONFIG_FILES(locale/Makefile)
234 244  
235 245 AC_CONFIG_FILES(branding/Makefile)
236 246 AC_CONFIG_FILES(branding/launcher.desktop)
  247 +AC_CONFIG_FILES(branding/mime.xml)
237 248  
238 249 dnl ---------------------------------------------------------------------------
239 250 dnl Output the generated config.status script.
... ...
locale/pt_BR.po
... ... @@ -5,7 +5,7 @@ msgid &quot;&quot;
5 5 msgstr ""
6 6 "Project-Id-Version: pw3270 5.0\n"
7 7 "Report-Msgid-Bugs-To: \n"
8   -"POT-Creation-Date: 2020-06-05 12:39-0300\n"
  8 +"POT-Creation-Date: 2020-08-05 16:03-0300\n"
9 9 "PO-Revision-Date: 2020-06-06 11:11-0300\n"
10 10 "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n"
11 11 "Language-Team: Português <>\n"
... ... @@ -43,7 +43,7 @@ msgstr &quot;Nome da ação&quot;
43 43 msgid "Action Names"
44 44 msgstr "Nome das ações"
45 45  
46   -#: ui/window.xml:367 ui/window.xml:477 ui/application.xml:509
  46 +#: ui/window.xml:369 ui/window.xml:479 ui/application.xml:509
47 47 msgid "Alert sound"
48 48 msgstr "Aviso sonoro"
49 49  
... ... @@ -83,7 +83,7 @@ msgstr &quot;Disponível&quot;
83 83 msgid "Based on X3270 from"
84 84 msgstr "Baseado no X3270 por"
85 85  
86   -#: ui/window.xml:396 ui/application.xml:474
  86 +#: ui/window.xml:398 ui/application.xml:474
87 87 msgid "Blank Fill"
88 88 msgstr "Completar com espaços"
89 89  
... ... @@ -117,7 +117,7 @@ msgstr &quot;_Cancelar&quot;
117 117 msgid "Change terminal colors"
118 118 msgstr "Mudar cores do terminal"
119 119  
120   -#: ui/window.xml:201 ui/window.xml:322 ui/application.xml:304
  120 +#: ui/window.xml:182 ui/window.xml:324 ui/application.xml:304
121 121 msgid "Clear"
122 122 msgstr "Limpar"
123 123  
... ... @@ -134,8 +134,8 @@ msgstr &quot;Fecha todas as janelas e encerra a aplicação&quot;
134 134 msgid "Close the window"
135 135 msgstr "Fechar a janela"
136 136  
137   -#: src/objects/window/actions/close.c:60 ui/window.xml:269 ui/window.xml:456
138   -#: ui/window.xml:558 ui/application.xml:216
  137 +#: src/objects/window/actions/close.c:60 ui/window.xml:270 ui/window.xml:458
  138 +#: ui/window.xml:560 ui/application.xml:216
139 139 msgid "Close window"
140 140 msgstr "Fechar janela"
141 141  
... ... @@ -143,10 +143,6 @@ msgstr &quot;Fechar janela&quot;
143 143 msgid "Colors"
144 144 msgstr "Cores"
145 145  
146   -#: src/objects/linux/savedesktopicon.c:93
147   -msgid "Comment"
148   -msgstr "Comentário"
149   -
150 146 #: src/objects/window/actions/connect.c:59
151 147 msgid "Connect"
152 148 msgstr "Conectar"
... ... @@ -179,11 +175,11 @@ msgstr &quot;Copiar como tabela&quot;
179 175 msgid "Copy as text"
180 176 msgstr "Copiar como texto"
181 177  
182   -#: src/objects/linux/savedesktopicon.c:106
  178 +#: src/objects/windows/savedesktopicon.c:79
183 179 msgid "Create a desktop icon for the current session"
184 180 msgstr "Criar ícone da área de trabalho para a sessão atual."
185 181  
186   -#: ui/window.xml:357 ui/application.xml:459
  182 +#: ui/window.xml:359 ui/application.xml:459
187 183 msgid "Cross hair cursor"
188 184 msgstr "Cursor mira"
189 185  
... ... @@ -203,7 +199,7 @@ msgstr &quot;Sessão atual&quot;
203 199 msgid "Cut"
204 200 msgstr "Recortar"
205 201  
206   -#: ui/window.xml:211 ui/window.xml:332 ui/application.xml:314
  202 +#: ui/window.xml:192 ui/window.xml:334 ui/application.xml:314
207 203 msgid "Delete Field"
208 204 msgstr "Apagar campo"
209 205  
... ... @@ -211,7 +207,7 @@ msgstr &quot;Apagar campo&quot;
211 207 msgid "Desktop icon"
212 208 msgstr "Ícone da área de trabalho"
213 209  
214   -#: ui/window.xml:264 ui/window.xml:451
  210 +#: ui/window.xml:265 ui/window.xml:453
215 211 msgid "Disconnect"
216 212 msgstr "Desconectar"
217 213  
... ... @@ -220,7 +216,7 @@ msgstr &quot;Desconectar&quot;
220 216 msgid "Disconnected from host"
221 217 msgstr "Desconectado do servidor"
222 218  
223   -#: ui/window.xml:379 ui/window.xml:490 ui/application.xml:524
  219 +#: ui/window.xml:381 ui/window.xml:492 ui/application.xml:524
224 220 msgid "Dynamic font spacing"
225 221 msgstr "Espaçamento dinâmico"
226 222  
... ... @@ -244,15 +240,15 @@ msgstr &quot;Largura do elemento em colunas&quot;
244 240 msgid "Enabled"
245 241 msgstr "Habilitado"
246 242  
247   -#: ui/window.xml:206 ui/window.xml:327 ui/application.xml:309
  243 +#: ui/window.xml:187 ui/window.xml:329 ui/application.xml:309
248 244 msgid "Erase input"
249 245 msgstr "Apagar campos"
250 246  
251   -#: ui/window.xml:216 ui/window.xml:337 ui/application.xml:319
  247 +#: ui/window.xml:197 ui/window.xml:339 ui/application.xml:319
252 248 msgid "Erase to end of field"
253 249 msgstr "Apagar até o final do campo"
254 250  
255   -#: ui/window.xml:221 ui/window.xml:342 ui/application.xml:324
  251 +#: ui/window.xml:202 ui/window.xml:344 ui/application.xml:324
256 252 msgid "Erase to end of line"
257 253 msgstr "Apagar até o final da linha"
258 254  
... ... @@ -260,7 +256,7 @@ msgstr &quot;Apagar até o final da linha&quot;
260 256 msgid "Field attributes"
261 257 msgstr "Mostra atributos de campo"
262 258  
263   -#: src/objects/linux/savedesktopicon.c:72
  259 +#: src/objects/windows/savedesktopicon.c:62
264 260 msgid "File name"
265 261 msgstr "Nome do arquivo"
266 262  
... ... @@ -268,7 +264,7 @@ msgstr &quot;Nome do arquivo&quot;
268 264 msgid "Full Screen"
269 265 msgstr "Tela cheia"
270 266  
271   -#: ui/window.xml:255 ui/window.xml:405 ui/window.xml:495
  267 +#: ui/window.xml:236 ui/window.xml:407 ui/window.xml:497
272 268 msgid "Full screen"
273 269 msgstr "Tela cheia"
274 270  
... ... @@ -276,10 +272,6 @@ msgstr &quot;Tela cheia&quot;
276 272 msgid "Function bar"
277 273 msgstr "Barra de funções"
278 274  
279   -#: src/objects/linux/savedesktopicon.c:86
280   -msgid "Generic name"
281   -msgstr "Nome genérico"
282   -
283 275 #: ui/application.xml:36 ui/application.xml:534
284 276 msgid "Help"
285 277 msgstr "Ajuda"
... ... @@ -320,7 +312,7 @@ msgstr &quot;Apenas ícones&quot;
320 312 msgid "If the action can be activated"
321 313 msgstr "Se a ação pode ser ativada"
322 314  
323   -#: ui/window.xml:467
  315 +#: ui/window.xml:469
324 316 msgid "Insert"
325 317 msgstr "Inserção"
326 318  
... ... @@ -364,7 +356,7 @@ msgstr &quot;Etiqueta&quot;
364 356 msgid "Large"
365 357 msgstr "Grande"
366 358  
367   -#: src/objects/linux/savedesktopicon.c:79
  359 +#: src/objects/windows/savedesktopicon.c:67
368 360 msgid "Launcher name"
369 361 msgstr "Nome do lançador"
370 362  
... ... @@ -380,7 +372,7 @@ msgstr &quot;Menu principal&quot;
380 372 msgid "Main Toolbar"
381 373 msgstr "Barra de ferramentas"
382 374  
383   -#: ui/window.xml:538
  375 +#: ui/window.xml:540
384 376 msgid "Main menu"
385 377 msgstr "Menu principal"
386 378  
... ... @@ -392,23 +384,23 @@ msgstr &quot;Mantenedores&quot;
392 384 msgid "Menu"
393 385 msgstr "Menu"
394 386  
395   -#: ui/window.xml:504 ui/application.xml:403
  387 +#: ui/window.xml:506 ui/application.xml:403
396 388 msgid "Model 2 - 80x24"
397 389 msgstr "Modelo 2 - 80x24"
398 390  
399   -#: ui/window.xml:509 ui/application.xml:408
  391 +#: ui/window.xml:511 ui/application.xml:408
400 392 msgid "Model 3 - 80x32"
401 393 msgstr "Modelo 3 - 80x32"
402 394  
403   -#: ui/window.xml:514 ui/application.xml:413
  395 +#: ui/window.xml:516 ui/application.xml:413
404 396 msgid "Model 4 - 80x43"
405 397 msgstr "Modelo 4 - 80x43"
406 398  
407   -#: ui/window.xml:519 ui/application.xml:418
  399 +#: ui/window.xml:521 ui/application.xml:418
408 400 msgid "Model 5 - 132x27"
409 401 msgstr "Modelo 5 - 132x27"
410 402  
411   -#: ui/window.xml:374 ui/application.xml:444
  403 +#: ui/window.xml:376 ui/application.xml:444
412 404 msgid "Monocase"
413 405 msgstr "Só Maiúsculas"
414 406  
... ... @@ -464,7 +456,7 @@ msgstr &quot;Abrir sessão em nova aba&quot;
464 456 msgid "Open session in New window"
465 457 msgstr "Abrir sessão em nova janela"
466 458  
467   -#: ui/window.xml:231 ui/window.xml:352 ui/window.xml:487 ui/application.xml:431
  459 +#: ui/window.xml:212 ui/window.xml:354 ui/window.xml:489 ui/application.xml:431
468 460 msgid "Options"
469 461 msgstr "Opções"
470 462  
... ... @@ -472,19 +464,19 @@ msgstr &quot;Opções&quot;
472 464 msgid "Parameter Type"
473 465 msgstr "Tipo de parâmetro"
474 466  
475   -#: ui/window.xml:284 ui/application.xml:261
  467 +#: ui/window.xml:286 ui/application.xml:261
476 468 msgid "Paste from clipboard"
477 469 msgstr "Colar da área de transferência"
478 470  
479   -#: ui/window.xml:294 ui/application.xml:271
  471 +#: ui/window.xml:296 ui/application.xml:271
480 472 msgid "Paste from text file"
481 473 msgstr "Colar de um arquivo texto"
482 474  
483   -#: ui/window.xml:289 ui/application.xml:266
  475 +#: ui/window.xml:291 ui/application.xml:266
484 476 msgid "Paste next"
485 477 msgstr "Colar próximo"
486 478  
487   -#: ui/window.xml:391 ui/application.xml:469
  479 +#: ui/window.xml:393 ui/application.xml:469
488 480 msgid "Paste with left margin"
489 481 msgstr "Colar com margem esquerda"
490 482  
... ... @@ -496,11 +488,11 @@ msgstr &quot;Preferências&quot;
496 488 msgid "Print"
497 489 msgstr "Imprimir"
498 490  
499   -#: ui/window.xml:437
  491 +#: ui/window.xml:439
500 492 msgid "Print screen"
501 493 msgstr "Imrpimir o conteúdo da tela"
502 494  
503   -#: ui/window.xml:187
  495 +#: ui/window.xml:252
504 496 msgid "Print selected"
505 497 msgstr "Imprimir seleção"
506 498  
... ... @@ -517,11 +509,11 @@ msgstr &quot;Sair&quot;
517 509 msgid "Rename Session"
518 510 msgstr "Renomear sessão"
519 511  
520   -#: ui/window.xml:313 ui/application.xml:295
  512 +#: ui/window.xml:315 ui/application.xml:295
521 513 msgid "Reselect"
522 514 msgstr "Reselecionar"
523 515  
524   -#: ui/window.xml:362 ui/application.xml:464
  516 +#: ui/window.xml:364 ui/application.xml:464
525 517 msgid "Resize on alternate screen"
526 518 msgstr "Mudar tamanho do terminal em tela alternativa"
527 519  
... ... @@ -541,15 +533,15 @@ msgstr &quot;Salvar&quot;
541 533 msgid "Save As"
542 534 msgstr "Salvar Como"
543 535  
544   -#: src/objects/linux/savedesktopicon.c:105
  536 +#: src/objects/windows/savedesktopicon.c:78
545 537 msgid "Save desktop icon"
546 538 msgstr "Salvar ícone da área de trabalho"
547 539  
548   -#: ui/window.xml:432
  540 +#: ui/window.xml:434
549 541 msgid "Save screen"
550 542 msgstr "Salvar tela"
551 543  
552   -#: ui/window.xml:182
  544 +#: ui/window.xml:247
553 545 msgid "Save selected"
554 546 msgstr "Salvar seleção"
555 547  
... ... @@ -557,19 +549,19 @@ msgstr &quot;Salvar seleção&quot;
557 549 msgid "Save session properties"
558 550 msgstr "Salvar propriedades da sessão"
559 551  
560   -#: ui/window.xml:501 ui/application.xml:400
  552 +#: ui/window.xml:503 ui/application.xml:400
561 553 msgid "Screen size"
562 554 msgstr "Tamanho da tela"
563 555  
564   -#: ui/window.xml:308 ui/application.xml:285
  556 +#: ui/window.xml:310 ui/application.xml:285
565 557 msgid "Select Field"
566 558 msgstr "Selecionar campo"
567 559  
568   -#: ui/window.xml:303 ui/application.xml:280
  560 +#: ui/window.xml:305 ui/application.xml:280
569 561 msgid "Select all"
570 562 msgstr "Selecionar tudo"
571 563  
572   -#: ui/window.xml:236 ui/application.xml:479
  564 +#: ui/window.xml:217 ui/application.xml:479
573 565 msgid "Select by rectangles"
574 566 msgstr "Seleção retangular"
575 567  
... ... @@ -590,7 +582,7 @@ msgstr &quot;Área selecionada&quot;
590 582 msgid "Send/Receive"
591 583 msgstr "Enviar/Receber"
592 584  
593   -#: src/objects/window/actions/filetransfer.c:46 ui/window.xml:442
  585 +#: src/objects/window/actions/filetransfer.c:46 ui/window.xml:444
594 586 #: ui/application.xml:195
595 587 msgid "Send/Receive files"
596 588 msgstr "Enviar/Receber arquivos"
... ... @@ -616,7 +608,7 @@ msgid &quot;Session in new window&quot;
616 608 msgstr "Sessão em nova janela"
617 609  
618 610 #: src/objects/window/actions/sessionproperties.c:45 ui/window.xml:98
619   -#: ui/window.xml:552 ui/application.xml:163
  611 +#: ui/window.xml:554 ui/application.xml:163
620 612 msgid "Session properties"
621 613 msgstr "Propriedades da sessão"
622 614  
... ... @@ -640,11 +632,11 @@ msgstr &quot;Configurar barra de ferramentas&quot;
640 632 msgid "Show Underline"
641 633 msgstr "Mostrar sublinhado"
642 634  
643   -#: ui/window.xml:250
  635 +#: ui/window.xml:231
644 636 msgid "Show menu"
645 637 msgstr "Mostrar menu"
646 638  
647   -#: ui/window.xml:245
  639 +#: ui/window.xml:226
648 640 msgid "Show toolbar"
649 641 msgstr "Mostrar barra de ferramentas"
650 642  
... ... @@ -652,7 +644,7 @@ msgstr &quot;Mostrar barra de ferramentas&quot;
652 644 msgid "Small"
653 645 msgstr "Pequeno"
654 646  
655   -#: ui/window.xml:386 ui/application.xml:504
  647 +#: ui/window.xml:388 ui/application.xml:504
656 648 msgid "Smart paste"
657 649 msgstr "Colar inteligente"
658 650  
... ... @@ -764,12 +756,12 @@ msgstr &quot;The type of GVariant passed to activate()&quot;
764 756 msgid "The type of the state kept by the action"
765 757 msgstr "O tipo do estado mantido pela ação"
766 758  
767   -#: src/objects/toolbar/settings.c:89 ui/window.xml:418 ui/window.xml:533
  759 +#: src/objects/toolbar/settings.c:89 ui/window.xml:420 ui/window.xml:535
768 760 #: ui/application.xml:342
769 761 msgid "Toolbar"
770 762 msgstr "Barra de ferramentas"
771 763  
772   -#: ui/window.xml:423
  764 +#: ui/window.xml:425
773 765 msgid "Top menu"
774 766 msgstr "Menu principal"
775 767  
... ... @@ -777,7 +769,7 @@ msgstr &quot;Menu principal&quot;
777 769 msgid "Trace"
778 770 msgstr "Trace"
779 771  
780   -#: ui/window.xml:472 ui/application.xml:449
  772 +#: ui/window.xml:474 ui/application.xml:449
781 773 msgid "Track Cursor"
782 774 msgstr "Mostrar posição do cursor"
783 775  
... ... @@ -785,7 +777,7 @@ msgstr &quot;Mostrar posição do cursor&quot;
785 777 msgid "UI Type"
786 778 msgstr "Interface de usuário"
787 779  
788   -#: ui/window.xml:192 ui/application.xml:290
  780 +#: ui/window.xml:257 ui/application.xml:290
789 781 msgid "Unselect"
790 782 msgstr "Remover seleção"
791 783  
... ... @@ -799,7 +791,7 @@ msgstr &quot;Usar teclas +/- para navegar por campos&quot;
799 791 msgid "Version %s-%s"
800 792 msgstr "Versão %s-%s"
801 793  
802   -#: src/objects/window/header.c:66 ui/window.xml:415 ui/window.xml:530
  794 +#: src/objects/window/header.c:66 ui/window.xml:417 ui/window.xml:532
803 795 #: ui/application.xml:63
804 796 msgid "View"
805 797 msgstr "Exibir"
... ... @@ -812,7 +804,7 @@ msgstr &quot;Janela com sessão padrão&quot;
812 804 msgid "_Apply"
813 805 msgstr "_Aplicar"
814 806  
815   -#: src/objects/settings/dialog.c:83 src/objects/linux/savedesktopicon.c:132
  807 +#: src/objects/settings/dialog.c:83 src/objects/windows/savedesktopicon.c:104
816 808 msgid "_Cancel"
817 809 msgstr "_Cancelar"
818 810  
... ... @@ -820,7 +812,7 @@ msgstr &quot;_Cancelar&quot;
820 812 msgid "_Close session"
821 813 msgstr "_Fechar sessão"
822 814  
823   -#: ui/window.xml:547 ui/application.xml:368
  815 +#: ui/window.xml:549 ui/application.xml:368
824 816 msgid "_Connect"
825 817 msgstr "_Conectar"
826 818  
... ... @@ -828,7 +820,7 @@ msgstr &quot;_Conectar&quot;
828 820 msgid "_Disconnect"
829 821 msgstr "_Desconectar"
830 822  
831   -#: ui/window.xml:148 ui/window.xml:279 ui/application.xml:231
  823 +#: ui/window.xml:148 ui/window.xml:281 ui/application.xml:231
832 824 msgid "_Edit"
833 825 msgstr "_Editar"
834 826  
... ... @@ -856,7 +848,7 @@ msgstr &quot;_Propriedades&quot;
856 848 msgid "_Rename session"
857 849 msgstr "Renomear sessão"
858 850  
859   -#: src/objects/linux/savedesktopicon.c:133
  851 +#: src/objects/windows/savedesktopicon.c:105
860 852 msgid "_Save"
861 853 msgstr "_Salvar"
862 854  
... ... @@ -1516,6 +1508,9 @@ msgstr &quot;translator-credits&quot;
1516 1508 #~ msgid "Command to execute"
1517 1509 #~ msgstr "Comando a executar"
1518 1510  
  1511 +#~ msgid "Comment"
  1512 +#~ msgstr "Comentário"
  1513 +
1519 1514 #~ msgid "Complete"
1520 1515 #~ msgstr "Completo"
1521 1516  
... ... @@ -1841,6 +1836,9 @@ msgstr &quot;translator-credits&quot;
1841 1836 #~ msgid "GTK Version mismatch"
1842 1837 #~ msgstr "Divergência de versão GTK"
1843 1838  
  1839 +#~ msgid "Generic name"
  1840 +#~ msgstr "Nome genérico"
  1841 +
1844 1842 #~ msgid "Get transfer queue from an external XML file"
1845 1843 #~ msgstr "Obtém a fila de transferência de um arquivo XML externo"
1846 1844  
... ...
locale/pw3270.pot
... ... @@ -8,7 +8,7 @@ msgid &quot;&quot;
8 8 msgstr ""
9 9 "Project-Id-Version: PACKAGE VERSION\n"
10 10 "Report-Msgid-Bugs-To: \n"
11   -"POT-Creation-Date: 2020-06-15 09:08-0300\n"
  11 +"POT-Creation-Date: 2020-08-05 16:03-0300\n"
12 12 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 13 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14 14 "Language-Team: LANGUAGE <LL@li.org>\n"
... ... @@ -40,7 +40,7 @@ msgstr &quot;&quot;
40 40 msgid "Action Names"
41 41 msgstr ""
42 42  
43   -#: ui/window.xml:367 ui/window.xml:477 ui/application.xml:509
  43 +#: ui/window.xml:369 ui/window.xml:479 ui/application.xml:509
44 44 msgid "Alert sound"
45 45 msgstr ""
46 46  
... ... @@ -80,7 +80,7 @@ msgstr &quot;&quot;
80 80 msgid "Based on X3270 from"
81 81 msgstr ""
82 82  
83   -#: ui/window.xml:396 ui/application.xml:474
  83 +#: ui/window.xml:398 ui/application.xml:474
84 84 msgid "Blank Fill"
85 85 msgstr ""
86 86  
... ... @@ -114,7 +114,7 @@ msgstr &quot;&quot;
114 114 msgid "Change terminal colors"
115 115 msgstr ""
116 116  
117   -#: ui/window.xml:201 ui/window.xml:322 ui/application.xml:304
  117 +#: ui/window.xml:182 ui/window.xml:324 ui/application.xml:304
118 118 msgid "Clear"
119 119 msgstr ""
120 120  
... ... @@ -131,8 +131,8 @@ msgstr &quot;&quot;
131 131 msgid "Close the window"
132 132 msgstr ""
133 133  
134   -#: src/objects/window/actions/close.c:60 ui/window.xml:269 ui/window.xml:456
135   -#: ui/window.xml:558 ui/application.xml:216
  134 +#: src/objects/window/actions/close.c:60 ui/window.xml:270 ui/window.xml:458
  135 +#: ui/window.xml:560 ui/application.xml:216
136 136 msgid "Close window"
137 137 msgstr ""
138 138  
... ... @@ -140,10 +140,6 @@ msgstr &quot;&quot;
140 140 msgid "Colors"
141 141 msgstr ""
142 142  
143   -#: src/objects/linux/savedesktopicon.c:93
144   -msgid "Comment"
145   -msgstr ""
146   -
147 143 #: src/objects/window/actions/connect.c:59
148 144 msgid "Connect"
149 145 msgstr ""
... ... @@ -176,11 +172,11 @@ msgstr &quot;&quot;
176 172 msgid "Copy as text"
177 173 msgstr ""
178 174  
179   -#: src/objects/linux/savedesktopicon.c:106
  175 +#: src/objects/windows/savedesktopicon.c:79
180 176 msgid "Create a desktop icon for the current session"
181 177 msgstr ""
182 178  
183   -#: ui/window.xml:357 ui/application.xml:459
  179 +#: ui/window.xml:359 ui/application.xml:459
184 180 msgid "Cross hair cursor"
185 181 msgstr ""
186 182  
... ... @@ -200,7 +196,7 @@ msgstr &quot;&quot;
200 196 msgid "Cut"
201 197 msgstr ""
202 198  
203   -#: ui/window.xml:211 ui/window.xml:332 ui/application.xml:314
  199 +#: ui/window.xml:192 ui/window.xml:334 ui/application.xml:314
204 200 msgid "Delete Field"
205 201 msgstr ""
206 202  
... ... @@ -208,7 +204,7 @@ msgstr &quot;&quot;
208 204 msgid "Desktop icon"
209 205 msgstr ""
210 206  
211   -#: ui/window.xml:264 ui/window.xml:451
  207 +#: ui/window.xml:265 ui/window.xml:453
212 208 msgid "Disconnect"
213 209 msgstr ""
214 210  
... ... @@ -217,7 +213,7 @@ msgstr &quot;&quot;
217 213 msgid "Disconnected from host"
218 214 msgstr ""
219 215  
220   -#: ui/window.xml:379 ui/window.xml:490 ui/application.xml:524
  216 +#: ui/window.xml:381 ui/window.xml:492 ui/application.xml:524
221 217 msgid "Dynamic font spacing"
222 218 msgstr ""
223 219  
... ... @@ -241,15 +237,15 @@ msgstr &quot;&quot;
241 237 msgid "Enabled"
242 238 msgstr ""
243 239  
244   -#: ui/window.xml:206 ui/window.xml:327 ui/application.xml:309
  240 +#: ui/window.xml:187 ui/window.xml:329 ui/application.xml:309
245 241 msgid "Erase input"
246 242 msgstr ""
247 243  
248   -#: ui/window.xml:216 ui/window.xml:337 ui/application.xml:319
  244 +#: ui/window.xml:197 ui/window.xml:339 ui/application.xml:319
249 245 msgid "Erase to end of field"
250 246 msgstr ""
251 247  
252   -#: ui/window.xml:221 ui/window.xml:342 ui/application.xml:324
  248 +#: ui/window.xml:202 ui/window.xml:344 ui/application.xml:324
253 249 msgid "Erase to end of line"
254 250 msgstr ""
255 251  
... ... @@ -257,7 +253,7 @@ msgstr &quot;&quot;
257 253 msgid "Field attributes"
258 254 msgstr ""
259 255  
260   -#: src/objects/linux/savedesktopicon.c:72
  256 +#: src/objects/windows/savedesktopicon.c:62
261 257 msgid "File name"
262 258 msgstr ""
263 259  
... ... @@ -265,7 +261,7 @@ msgstr &quot;&quot;
265 261 msgid "Full Screen"
266 262 msgstr ""
267 263  
268   -#: ui/window.xml:255 ui/window.xml:405 ui/window.xml:495
  264 +#: ui/window.xml:236 ui/window.xml:407 ui/window.xml:497
269 265 msgid "Full screen"
270 266 msgstr ""
271 267  
... ... @@ -273,10 +269,6 @@ msgstr &quot;&quot;
273 269 msgid "Function bar"
274 270 msgstr ""
275 271  
276   -#: src/objects/linux/savedesktopicon.c:86
277   -msgid "Generic name"
278   -msgstr ""
279   -
280 272 #: ui/application.xml:36 ui/application.xml:534
281 273 msgid "Help"
282 274 msgstr ""
... ... @@ -317,7 +309,7 @@ msgstr &quot;&quot;
317 309 msgid "If the action can be activated"
318 310 msgstr ""
319 311  
320   -#: ui/window.xml:467
  312 +#: ui/window.xml:469
321 313 msgid "Insert"
322 314 msgstr ""
323 315  
... ... @@ -361,7 +353,7 @@ msgstr &quot;&quot;
361 353 msgid "Large"
362 354 msgstr ""
363 355  
364   -#: src/objects/linux/savedesktopicon.c:79
  356 +#: src/objects/windows/savedesktopicon.c:67
365 357 msgid "Launcher name"
366 358 msgstr ""
367 359  
... ... @@ -377,7 +369,7 @@ msgstr &quot;&quot;
377 369 msgid "Main Toolbar"
378 370 msgstr ""
379 371  
380   -#: ui/window.xml:538
  372 +#: ui/window.xml:540
381 373 msgid "Main menu"
382 374 msgstr ""
383 375  
... ... @@ -389,23 +381,23 @@ msgstr &quot;&quot;
389 381 msgid "Menu"
390 382 msgstr ""
391 383  
392   -#: ui/window.xml:504 ui/application.xml:403
  384 +#: ui/window.xml:506 ui/application.xml:403
393 385 msgid "Model 2 - 80x24"
394 386 msgstr ""
395 387  
396   -#: ui/window.xml:509 ui/application.xml:408
  388 +#: ui/window.xml:511 ui/application.xml:408
397 389 msgid "Model 3 - 80x32"
398 390 msgstr ""
399 391  
400   -#: ui/window.xml:514 ui/application.xml:413
  392 +#: ui/window.xml:516 ui/application.xml:413
401 393 msgid "Model 4 - 80x43"
402 394 msgstr ""
403 395  
404   -#: ui/window.xml:519 ui/application.xml:418
  396 +#: ui/window.xml:521 ui/application.xml:418
405 397 msgid "Model 5 - 132x27"
406 398 msgstr ""
407 399  
408   -#: ui/window.xml:374 ui/application.xml:444
  400 +#: ui/window.xml:376 ui/application.xml:444
409 401 msgid "Monocase"
410 402 msgstr ""
411 403  
... ... @@ -461,7 +453,7 @@ msgstr &quot;&quot;
461 453 msgid "Open session in New window"
462 454 msgstr ""
463 455  
464   -#: ui/window.xml:231 ui/window.xml:352 ui/window.xml:487 ui/application.xml:431
  456 +#: ui/window.xml:212 ui/window.xml:354 ui/window.xml:489 ui/application.xml:431
465 457 msgid "Options"
466 458 msgstr ""
467 459  
... ... @@ -469,19 +461,19 @@ msgstr &quot;&quot;
469 461 msgid "Parameter Type"
470 462 msgstr ""
471 463  
472   -#: ui/window.xml:284 ui/application.xml:261
  464 +#: ui/window.xml:286 ui/application.xml:261
473 465 msgid "Paste from clipboard"
474 466 msgstr ""
475 467  
476   -#: ui/window.xml:294 ui/application.xml:271
  468 +#: ui/window.xml:296 ui/application.xml:271
477 469 msgid "Paste from text file"
478 470 msgstr ""
479 471  
480   -#: ui/window.xml:289 ui/application.xml:266
  472 +#: ui/window.xml:291 ui/application.xml:266
481 473 msgid "Paste next"
482 474 msgstr ""
483 475  
484   -#: ui/window.xml:391 ui/application.xml:469
  476 +#: ui/window.xml:393 ui/application.xml:469
485 477 msgid "Paste with left margin"
486 478 msgstr ""
487 479  
... ... @@ -493,11 +485,11 @@ msgstr &quot;&quot;
493 485 msgid "Print"
494 486 msgstr ""
495 487  
496   -#: ui/window.xml:437
  488 +#: ui/window.xml:439
497 489 msgid "Print screen"
498 490 msgstr ""
499 491  
500   -#: ui/window.xml:187
  492 +#: ui/window.xml:252
501 493 msgid "Print selected"
502 494 msgstr ""
503 495  
... ... @@ -514,11 +506,11 @@ msgstr &quot;&quot;
514 506 msgid "Rename Session"
515 507 msgstr ""
516 508  
517   -#: ui/window.xml:313 ui/application.xml:295
  509 +#: ui/window.xml:315 ui/application.xml:295
518 510 msgid "Reselect"
519 511 msgstr ""
520 512  
521   -#: ui/window.xml:362 ui/application.xml:464
  513 +#: ui/window.xml:364 ui/application.xml:464
522 514 msgid "Resize on alternate screen"
523 515 msgstr ""
524 516  
... ... @@ -538,15 +530,15 @@ msgstr &quot;&quot;
538 530 msgid "Save As"
539 531 msgstr ""
540 532  
541   -#: src/objects/linux/savedesktopicon.c:105
  533 +#: src/objects/windows/savedesktopicon.c:78
542 534 msgid "Save desktop icon"
543 535 msgstr ""
544 536  
545   -#: ui/window.xml:432
  537 +#: ui/window.xml:434
546 538 msgid "Save screen"
547 539 msgstr ""
548 540  
549   -#: ui/window.xml:182
  541 +#: ui/window.xml:247
550 542 msgid "Save selected"
551 543 msgstr ""
552 544  
... ... @@ -554,19 +546,19 @@ msgstr &quot;&quot;
554 546 msgid "Save session properties"
555 547 msgstr ""
556 548  
557   -#: ui/window.xml:501 ui/application.xml:400
  549 +#: ui/window.xml:503 ui/application.xml:400
558 550 msgid "Screen size"
559 551 msgstr ""
560 552  
561   -#: ui/window.xml:308 ui/application.xml:285
  553 +#: ui/window.xml:310 ui/application.xml:285
562 554 msgid "Select Field"
563 555 msgstr ""
564 556  
565   -#: ui/window.xml:303 ui/application.xml:280
  557 +#: ui/window.xml:305 ui/application.xml:280
566 558 msgid "Select all"
567 559 msgstr ""
568 560  
569   -#: ui/window.xml:236 ui/application.xml:479
  561 +#: ui/window.xml:217 ui/application.xml:479
570 562 msgid "Select by rectangles"
571 563 msgstr ""
572 564  
... ... @@ -587,7 +579,7 @@ msgstr &quot;&quot;
587 579 msgid "Send/Receive"
588 580 msgstr ""
589 581  
590   -#: src/objects/window/actions/filetransfer.c:46 ui/window.xml:442
  582 +#: src/objects/window/actions/filetransfer.c:46 ui/window.xml:444
591 583 #: ui/application.xml:195
592 584 msgid "Send/Receive files"
593 585 msgstr ""
... ... @@ -613,7 +605,7 @@ msgid &quot;Session in new window&quot;
613 605 msgstr ""
614 606  
615 607 #: src/objects/window/actions/sessionproperties.c:45 ui/window.xml:98
616   -#: ui/window.xml:552 ui/application.xml:163
  608 +#: ui/window.xml:554 ui/application.xml:163
617 609 msgid "Session properties"
618 610 msgstr ""
619 611  
... ... @@ -637,11 +629,11 @@ msgstr &quot;&quot;
637 629 msgid "Show Underline"
638 630 msgstr ""
639 631  
640   -#: ui/window.xml:250
  632 +#: ui/window.xml:231
641 633 msgid "Show menu"
642 634 msgstr ""
643 635  
644   -#: ui/window.xml:245
  636 +#: ui/window.xml:226
645 637 msgid "Show toolbar"
646 638 msgstr ""
647 639  
... ... @@ -649,7 +641,7 @@ msgstr &quot;&quot;
649 641 msgid "Small"
650 642 msgstr ""
651 643  
652   -#: ui/window.xml:386 ui/application.xml:504
  644 +#: ui/window.xml:388 ui/application.xml:504
653 645 msgid "Smart paste"
654 646 msgstr ""
655 647  
... ... @@ -761,12 +753,12 @@ msgstr &quot;&quot;
761 753 msgid "The type of the state kept by the action"
762 754 msgstr ""
763 755  
764   -#: src/objects/toolbar/settings.c:89 ui/window.xml:418 ui/window.xml:533
  756 +#: src/objects/toolbar/settings.c:89 ui/window.xml:420 ui/window.xml:535
765 757 #: ui/application.xml:342
766 758 msgid "Toolbar"
767 759 msgstr ""
768 760  
769   -#: ui/window.xml:423
  761 +#: ui/window.xml:425
770 762 msgid "Top menu"
771 763 msgstr ""
772 764  
... ... @@ -774,7 +766,7 @@ msgstr &quot;&quot;
774 766 msgid "Trace"
775 767 msgstr ""
776 768  
777   -#: ui/window.xml:472 ui/application.xml:449
  769 +#: ui/window.xml:474 ui/application.xml:449
778 770 msgid "Track Cursor"
779 771 msgstr ""
780 772  
... ... @@ -782,7 +774,7 @@ msgstr &quot;&quot;
782 774 msgid "UI Type"
783 775 msgstr ""
784 776  
785   -#: ui/window.xml:192 ui/application.xml:290
  777 +#: ui/window.xml:257 ui/application.xml:290
786 778 msgid "Unselect"
787 779 msgstr ""
788 780  
... ... @@ -796,7 +788,7 @@ msgstr &quot;&quot;
796 788 msgid "Version %s-%s"
797 789 msgstr ""
798 790  
799   -#: src/objects/window/header.c:66 ui/window.xml:415 ui/window.xml:530
  791 +#: src/objects/window/header.c:66 ui/window.xml:417 ui/window.xml:532
800 792 #: ui/application.xml:63
801 793 msgid "View"
802 794 msgstr ""
... ... @@ -809,7 +801,7 @@ msgstr &quot;&quot;
809 801 msgid "_Apply"
810 802 msgstr ""
811 803  
812   -#: src/objects/settings/dialog.c:83 src/objects/linux/savedesktopicon.c:132
  804 +#: src/objects/settings/dialog.c:83 src/objects/windows/savedesktopicon.c:104
813 805 msgid "_Cancel"
814 806 msgstr ""
815 807  
... ... @@ -817,7 +809,7 @@ msgstr &quot;&quot;
817 809 msgid "_Close session"
818 810 msgstr ""
819 811  
820   -#: ui/window.xml:547 ui/application.xml:368
  812 +#: ui/window.xml:549 ui/application.xml:368
821 813 msgid "_Connect"
822 814 msgstr ""
823 815  
... ... @@ -825,7 +817,7 @@ msgstr &quot;&quot;
825 817 msgid "_Disconnect"
826 818 msgstr ""
827 819  
828   -#: ui/window.xml:148 ui/window.xml:279 ui/application.xml:231
  820 +#: ui/window.xml:148 ui/window.xml:281 ui/application.xml:231
829 821 msgid "_Edit"
830 822 msgstr ""
831 823  
... ... @@ -853,7 +845,7 @@ msgstr &quot;&quot;
853 845 msgid "_Rename session"
854 846 msgstr ""
855 847  
856   -#: src/objects/linux/savedesktopicon.c:133
  848 +#: src/objects/windows/savedesktopicon.c:105
857 849 msgid "_Save"
858 850 msgstr ""
859 851  
... ...
src/main/main.c
... ... @@ -71,13 +71,19 @@ static gboolean quit_signal(GtkApplication *app) {
71 71 #endif // G_OS_UNIX
72 72  
73 73 static void g_log_to_lib3270(const gchar *log_domain,GLogLevelFlags G_GNUC_UNUSED(log_level),const gchar *message,gpointer G_GNUC_UNUSED(user_data)) {
  74 + debug("%s",message);
74 75 lib3270_write_log(NULL,log_domain ? log_domain : G_STRINGIFY(PRODUCT_NAME),"%s",message);
75 76 }
76 77  
77 78 int main (int argc, char **argv) {
78 79  
  80 + int status = -1;
  81 +
  82 +#ifdef _WIN32
  83 + debug("Process %s running on pid %u\n",argv[0],(unsigned int) GetCurrentProcessId());
  84 +#endif // _WIN32
  85 +
79 86 GtkApplication *app;
80   - int status;
81 87  
82 88 // Setup locale
83 89 #ifdef LC_ALL
... ... @@ -98,18 +104,17 @@ int main (int argc, char **argv) {
98 104 textdomain(PACKAGE_NAME);
99 105  
100 106 // Setup and start application.
101   -
102 107 g_set_application_name(G_STRINGIFY(PRODUCT_NAME));
103 108 app = pw3270_application_new("br.com.bb." G_STRINGIFY(PRODUCT_NAME),G_APPLICATION_HANDLES_OPEN);
104 109  
105 110 #ifdef G_OS_UNIX
106   - // Termination
107 111 g_unix_signal_add(SIGTERM, (GSourceFunc) quit_signal, app);
108 112 #endif // G_OS_UNIX
109 113  
110 114 status = g_application_run(G_APPLICATION (app), argc, argv);
111 115 g_object_unref (app);
112 116  
  117 + debug("%s ends with RC=%d",__FUNCTION__,status);
113 118 return status;
114 119  
115 120 }
... ...
src/main/windows/resources.rc.in
1 1 #include <windows.h>
2 2  
3   -1 ICON @PACKAGE_TARNAME@.ico
  3 +1 ICON @PRODUCT_NAME@.ico
4 4  
5 5 VS_VERSION_INFO VERSIONINFO
6 6 FILEVERSION @WIN32_FILE_VERSION@
... ...
src/objects/actions/abstract.c
... ... @@ -214,7 +214,7 @@
214 214  
215 215 }
216 216  
217   - void set_property(GObject G_GNUC_UNUSED(*object), guint G_GNUC_UNUSED(prop_id), const GValue G_GNUC_UNUSED(*value), GParamSpec *pspec) {
  217 + void set_property(GObject G_GNUC_UNUSED(*object), guint G_GNUC_UNUSED(prop_id), const GValue G_GNUC_UNUSED(*value), GParamSpec G_GNUC_UNUSED(*pspec)) {
218 218 // g_message("Action %s property %s is read-only",g_action_get_name(G_ACTION(object)),pspec->name);
219 219 }
220 220  
... ...
src/objects/window/terminal.c
... ... @@ -232,6 +232,29 @@
232 232 return NULL;
233 233 }
234 234  
  235 + static GtkResponseType load_popup_response(v3270 G_GNUC_UNUSED(*widget), const gchar *popup_name, struct SessionDescriptor * session) {
  236 +
  237 + if(!session->key_file)
  238 + return 0;
  239 +
  240 + if(g_key_file_has_key(session->key_file,"dialogs",popup_name,NULL))
  241 + return (GtkResponseType) g_key_file_get_integer(session->key_file,"dialogs",popup_name,NULL);
  242 +
  243 + return GTK_RESPONSE_NONE;
  244 + }
  245 +
  246 + static gboolean save_popup_response(GtkWidget *widget, const gchar *popup_name, GtkResponseType response, struct SessionDescriptor * session) {
  247 + debug("%s(%s)",__FUNCTION__,popup_name);
  248 +
  249 + if(!session->key_file)
  250 + return FALSE;
  251 +
  252 + g_key_file_set_integer(session->key_file,"dialogs",popup_name,(gint) response);
  253 + v3270_emit_save_settings(widget,NULL);
  254 +
  255 + return TRUE;
  256 + }
  257 +
235 258 GtkWidget * pw3270_terminal_new(const gchar *session_file) {
236 259  
237 260 GtkWidget * terminal = v3270_new();
... ... @@ -249,7 +272,13 @@
249 272 } else {
250 273  
251 274 // No session file, use the default one.
252   - g_autofree gchar * filename = g_build_filename(g_get_user_config_dir(),G_STRINGIFY(PRODUCT_NAME) ".conf",NULL);
  275 + g_autofree gchar * compatible = g_build_filename(g_get_user_config_dir(),G_STRINGIFY(PRODUCT_NAME) ".conf",NULL);
  276 + g_autofree gchar * filename = g_build_filename(g_get_user_config_dir(),"default.3270",NULL);
  277 +
  278 + if(g_file_test(compatible,G_FILE_TEST_IS_REGULAR))
  279 + {
  280 + g_rename(compatible,filename);
  281 + }
253 282  
254 283 descriptor = g_malloc0(sizeof(struct SessionDescriptor) + strlen(filename));
255 284 strcpy(descriptor->filename,filename);
... ... @@ -335,6 +364,8 @@
335 364 g_signal_connect(G_OBJECT(terminal),"print-done",G_CALLBACK(print_done),descriptor);
336 365 g_signal_connect(G_OBJECT(terminal),"print-setup",G_CALLBACK(print_setup),descriptor);
337 366 g_signal_connect(G_OBJECT(terminal),"destroy", G_CALLBACK(destroy),descriptor);
  367 + g_signal_connect(G_OBJECT(terminal),"load-popup-response",G_CALLBACK(load_popup_response),descriptor);
  368 + g_signal_connect(G_OBJECT(terminal),"save-popup-response",G_CALLBACK(save_popup_response),descriptor);
338 369  
339 370 return terminal;
340 371 }
... ...
src/objects/window/window.c
... ... @@ -202,7 +202,7 @@
202 202 visible
203 203 );
204 204  
205   - v3270_emit_save_settings(terminal);
  205 + v3270_emit_save_settings(terminal,NULL);
206 206  
207 207 }
208 208  
... ...
win/pack.sh
... ... @@ -34,7 +34,7 @@ PACKAGE_EXTRAS=&quot;libhllapi&quot;
34 34 TARGET_ARCHS="x86_64 x86_32"
35 35 GIT_URL="https://github.com/PerryWerneck"
36 36 BUILD_UNSTABLE=0
37   -MAKE_ZIP=1
  37 +MAKE_ZIP=0
38 38  
39 39 PROJECTDIR=$(dirname $(dirname $(readlink -f ${0})))
40 40 WORKDIR=$(mktemp -d)
... ... @@ -47,6 +47,10 @@ if [ -e /etc/os-release ]; then
47 47 . /etc/os-release
48 48 fi
49 49  
  50 +if [ -e ~/.config/user-dirs.dirs ]; then
  51 + . ~/.config/user-dirs.dirs
  52 +fi
  53 +
50 54 #
51 55 # Limpa diretório temporário
52 56 #
... ... @@ -209,7 +213,7 @@ buildLibrary()
209 213 mkdir -p ${WORKDIR}/build/${ARCH}/locale
210 214 mkdir -p ${WORKDIR}/build/${ARCH}/include
211 215  
212   - export PKG_CONFIG_PATH=${WORKDIR}/build/${ARCH}/pkgconfig
  216 + export PKG_CONFIG_PATH=${WORKDIR}/build/${ARCH}/lib/pkgconfig
213 217 export cache=${WORKDIR}/cache/${ARCH}/${1}.cache
214 218  
215 219 cd ${WORKDIR}/sources/${1}
... ... @@ -229,17 +233,16 @@ buildLibrary()
229 233 ./configure \
230 234 CFLAGS="-I${WORKDIR}/build/${ARCH}/include" \
231 235 CXXFLAGS="-I${WORKDIR}/build/${ARCH}/include" \
232   - LDFLAGS="-L${WORKDIR}/build/${ARCH}" \
  236 + LDFLAGS="-L${WORKDIR}/build/${ARCH}/lib" \
233 237 --host=${host} \
234 238 --prefix=${prefix} \
235 239 --with-product-name="${PRODUCT_NAME}" \
236   - --bindir=${WORKDIR}/build/${ARCH} \
237   - --libdir=${WORKDIR}/build/${ARCH} \
238   - --localedir=${WORKDIR}/build/${ARCH}/locale \
  240 + --bindir=${WORKDIR}/build/${ARCH}/bin \
  241 + --libdir=${WORKDIR}/build/${ARCH}/lib \
239 242 --includedir=${WORKDIR}/build/${ARCH}/include \
240   - --sysconfdir=${WORKDIR}/build/${ARCH} \
241   - --datadir=${WORKDIR}/build/${ARCH} \
242   - --datarootdir=${WORKDIR}/build/${ARCH}
  243 + --sysconfdir=${WORKDIR}/build/${ARCH}/etc \
  244 + --datadir=${WORKDIR}/build/${ARCH}/share \
  245 + --datarootdir=${WORKDIR}/build/${ARCH}/share
243 246 fi
244 247  
245 248 if [ "$?" != "0" ]; then
... ... @@ -310,7 +313,7 @@ buildExtraPackage()
310 313 mkdir -p ${WORKDIR}/build/${ARCH}/locale
311 314 mkdir -p ${WORKDIR}/build/${ARCH}/include
312 315  
313   - export PKG_CONFIG_PATH=${WORKDIR}/build/${ARCH}/pkgconfig
  316 + export PKG_CONFIG_PATH=${WORKDIR}/build/${ARCH}/lib/pkgconfig
314 317 export cache=${WORKDIR}/cache/${ARCH}/${1}.cache
315 318  
316 319 cd ${WORKDIR}/sources/${1}
... ... @@ -330,17 +333,16 @@ buildExtraPackage()
330 333 ./configure \
331 334 CFLAGS="-I${WORKDIR}/build/${ARCH}/include" \
332 335 CXXFLAGS="-I${WORKDIR}/build/${ARCH}/include" \
333   - LDFLAGS="-static-libgcc -static-libstdc++ -L${WORKDIR}/build/${ARCH}" \
  336 + LDFLAGS="-static-libgcc -static-libstdc++ -L${WORKDIR}/build/${ARCH}/lib" \
334 337 --host=${host} \
335 338 --prefix=${prefix} \
336 339 --with-product-name="${PRODUCT_NAME}" \
337   - --bindir=${WORKDIR}/build/${ARCH} \
338   - --libdir=${WORKDIR}/build/${ARCH} \
339   - --localedir=${WORKDIR}/build/${ARCH}/locale \
  340 + --bindir=${WORKDIR}/build/${ARCH}/bin \
  341 + --libdir=${WORKDIR}/build/${ARCH}/lib \
340 342 --includedir=${WORKDIR}/build/${ARCH}/include \
341   - --sysconfdir=${WORKDIR}/build/${ARCH} \
342   - --datadir=${WORKDIR}/build/${ARCH} \
343   - --datarootdir=${WORKDIR}/build/${ARCH}
  343 + --sysconfdir=${WORKDIR}/build/${ARCH}/etc \
  344 + --datadir=${WORKDIR}/build/${ARCH}/share \
  345 + --datarootdir=${WORKDIR}/build/${ARCH}/share
344 346  
345 347 fi
346 348  
... ... @@ -401,7 +403,7 @@ buildApplication()
401 403 mkdir -p ${WORKDIR}/build/${ARCH}/include
402 404  
403 405 export HOST_CC=/usr/bin/gcc
404   - export PKG_CONFIG_PATH=${WORKDIR}/build/${ARCH}/pkgconfig
  406 + export PKG_CONFIG_PATH=${WORKDIR}/build/${ARCH}/lib/pkgconfig
405 407 export cache=${WORKDIR}/cache/${ARCH}/${1}.cache
406 408  
407 409 cd ${WORKDIR}/sources/${1}
... ... @@ -430,16 +432,15 @@ buildApplication()
430 432  
431 433 ./configure \
432 434 CFLAGS="-I${WORKDIR}/build/${ARCH}/include" \
433   - LDFLAGS="-L${WORKDIR}/build/${ARCH}" \
  435 + LDFLAGS="-L${WORKDIR}/build/${ARCH}/lib" \
434 436 --host=${host} \
435 437 --prefix=${prefix} \
436   - --bindir=${WORKDIR}/build/${ARCH} \
437   - --libdir=${WORKDIR}/build/${ARCH} \
438   - --localedir=${WORKDIR}/build/${ARCH}/locale \
  438 + --bindir=${WORKDIR}/build/${ARCH}/bin \
  439 + --libdir=${WORKDIR}/build/${ARCH}/lib \
439 440 --includedir=${WORKDIR}/build/${ARCH}/include \
440   - --sysconfdir=${WORKDIR}/build/${ARCH} \
441   - --datadir=${WORKDIR}/build/${ARCH} \
442   - --datarootdir=${WORKDIR}/build/${ARCH}
  441 + --sysconfdir=${WORKDIR}/build/${ARCH}/etc \
  442 + --datadir=${WORKDIR}/build/${ARCH}/share \
  443 + --datarootdir=${WORKDIR}/build/${ARCH}/share
443 444  
444 445 fi
445 446  
... ... @@ -483,8 +484,14 @@ buildApplication()
483 484 fi
484 485 fi
485 486  
486   - if [ -e branding/${1}.svg ]; then
487   - convert -density 384 -background transparent branding/${1}.svg -define icon:auto-resize -colors 256 ${WORKDIR}/build/${ARCH}/${1}.ico
  487 + if [ -e branding/${PRODUCT_NAME}.svg ]; then
  488 + convert -density 384 -background transparent branding/${PRODUCT_NAME}.svg -define icon:auto-resize -colors 256 ${WORKDIR}/build/${ARCH}/${PRODUCT_NAME}.ico
  489 + if [ "$?" != "0" ]; then
  490 + cleanup
  491 + exit -1
  492 + fi
  493 + elif [ -e branding/${1}.svg ]; then
  494 + convert -density 384 -background transparent branding/${1}.svg -define icon:auto-resize -colors 256 ${WORKDIR}/build/${ARCH}/${PRODUCT_NAME}.ico
488 495 if [ "$?" != "0" ]; then
489 496 cleanup
490 497 exit -1
... ... @@ -541,6 +548,59 @@ makeRuntime()
541 548 }
542 549  
543 550 #
  551 +# Copy file
  552 +#
  553 +copy_install_file() {
  554 +
  555 + FILENAME=${PROJECTDIR}/$(basename ${1})
  556 +
  557 + rm -f "${FILENAME}"
  558 + cp -v "${1}" "${FILENAME}"
  559 +
  560 + if [ "$?" != "0" ]; then
  561 + failed "Can't copy ${1} to ${FILENAME}"
  562 + fi
  563 +
  564 + if [ ${BUILD_UNSTABLE} == "1" ]; then
  565 + TARGET_PATH="/${PRODUCT_NAME}/unstable/${ARCH}"
  566 + else
  567 + TARGET_PATH="/${PRODUCT_NAME}/stable/${ARCH}"
  568 + fi
  569 +
  570 + if [ -d ~/public_html/win/${PRODUCT_NAME} ]; then
  571 + mkdir -p ~/public_html/win/${TARGET_PATH}
  572 + ln -f -v "${FILENAME}" ~/public_html/win/${TARGET_PATH}
  573 + if [ "$?" != "0" ]; then
  574 + failed "Can't link ${1} to ~/public_html/win/${TARGET_PATH}"
  575 + fi
  576 + fi
  577 +
  578 + if [ ! -z "${XDG_PUBLICSHARE_DIR}" ] && [ -d "${XDG_PUBLICSHARE_DIR}/${PRODUCT_NAME}" ]; then
  579 +
  580 + mkdir -p "${XDG_PUBLICSHARE_DIR}/${TARGET_PATH}"
  581 + if [ "$?" != "0" ]; then
  582 + failed "Can't create ${XDG_PUBLICSHARE_DIR}/${TARGET_PATH}"
  583 + fi
  584 +
  585 + ln -f -v "${FILENAME}" ${XDG_PUBLICSHARE_DIR}/${TARGET_PATH}
  586 + if [ "$?" != "0" ]; then
  587 + failed "Can't link ${1} to ~/${XDG_PUBLICSHARE_DIR}/${TARGET_PATH}"
  588 + fi
  589 +
  590 + fi
  591 +
  592 + if [ "${PUBLISH}" == "1" ] && [ ! -z ${WIN_PACKAGE_SERVER} ]; then
  593 +
  594 + scp "${FILENAME}" ${WIN_PACKAGE_SERVER}/${TARGET_PATH}
  595 + if [ "$?" != "0" ]; then
  596 + failed "Can't publish ${1} to ${WIN_PACKAGE_SERVER}/${TARGET_PATH}"
  597 + fi
  598 +
  599 + fi
  600 +
  601 +}
  602 +
  603 +#
544 604 # Make packages
545 605 #
546 606 makeInstaller()
... ... @@ -587,50 +647,40 @@ makeInstaller()
587 647  
588 648 cd ${WORKDIR}/build/${ARCH}
589 649  
  650 + # Remove duplicates
  651 + fdupes -q -p -n -H -o name -r . |
  652 + while read _file
  653 + do
  654 + if test -z "$_target" ; then
  655 + _target="$_file";
  656 + else
  657 + if test -z "$_file" ; then
  658 + _target="";
  659 + continue ;
  660 + fi ;
  661 + ln -f "$_target" "$_file";
  662 + fi ;
  663 + done
  664 +
590 665 TARCH=${ARCH}
591 666 if [ "${TARCH}" == "x86_32" ]; then
592 667 TARCH="i686"
593 668 fi
594 669  
595   - if [ ${BUILD_UNSTABLE} == "1" ]; then
596   - TARGET_PATH="/${PRODUCT_NAME}/unstable/${ARCH}"
597   - else
598   - TARGET_PATH="/${PRODUCT_NAME}/${ARCH}"
599   - fi
600   -
601 670 if [ "${MAKE_ZIP}" == "1" ]; then
602 671  
603   - ZIPNAME="${WORKDIR}/build/${ARCH}/${PRODUCT_NAME}-${ARCH}.zip"
604   -
  672 + ZIPNAME="${WORKDIR}/build/${ARCH}/${PRODUCT_NAME}-${ARCH}-bin.zip"
605 673 rm -f "${ZIPNAME}"
606   - zip -9 "${ZIPNAME}" *.dll *.exe *.ico
  674 + zip -9 -j "${ZIPNAME}" bin/*
  675 + copy_install_file "${ZIPNAME}"
607 676  
608 677 pushd runtime
609   - zip -9 -r "${ZIPNAME}" .
610   -
  678 + ZIPNAME="${WORKDIR}/build/${ARCH}/${PRODUCT_NAME}-${ARCH}-runtime.zip"
  679 + rm -f "${ZIPNAME}"
  680 + zip -9 -r "${ZIPNAME}" *
  681 + copy_install_file "${ZIPNAME}"
611 682 popd
612 683  
613   - if [ -d ~/public_html ]; then
614   - mkdir -p ~/public_html/win/${TARGET_PATH}
615   - cp -v "${ZIPNAME}" ~/public_html/win/${TARGET_PATH}
616   - if [ "$?" != "0" ]; then
617   - failed "Can't copy zip to ~/public_html/win/${TARGET_PATH}"
618   - fi
619   - fi
620   -
621   - if [ "${PUBLISH}" == "1" ] && [ ! -z ${WIN_PACKAGE_SERVER} ]; then
622   -
623   - scp "${ZIPNAME}" ${WIN_PACKAGE_SERVER}/${TARGET_PATH}
624   - if [ "$?" != "0" ]; then
625   - failed "Can't publish zip to ${WIN_PACKAGE_SERVER}/${TARGET_PATH}"
626   - fi
627   - fi
628   -
629   - mv -f "${ZIPNAME}" ${PROJECTDIR}
630   - if [ "$?" != "0" ]; then
631   - failed "Can't move zip to ${PROJECTDIR}"
632   - fi
633   -
634 684 fi
635 685  
636 686 for NSI in *.nsi
... ... @@ -641,26 +691,10 @@ makeInstaller()
641 691 failed "Error building ${ARCH} ${NSI}"
642 692 fi
643 693  
644   - if [ -d ~/public_html ]; then
645   - mkdir -p ~/public_html/win/${TARGET_PATH}
646   - cp -v *-[0-9]*-${TARCH}.exe ~/public_html/win/${TARGET_PATH}
647   - if [ "$?" != "0" ]; then
648   - failed "Can't copy binary to ~/public_html/win/${TARGET_PATH}"
649   - fi
650   - fi
651   -
652   - if [ "${PUBLISH}" == "1" ] && [ ! -z ${WIN_PACKAGE_SERVER} ]; then
653   -
654   - scp *-[0-9]*-${TARCH}.exe ${WIN_PACKAGE_SERVER}/${TARGET_PATH}
655   - if [ "$?" != "0" ]; then
656   - failed "Can't publish to ${WIN_PACKAGE_SERVER}/${TARGET_PATH}"
657   - fi
658   - fi
659   -
660   - mv -f *-[0-9]*-${TARCH}.exe ${PROJECTDIR}
661   - if [ "$?" != "0" ]; then
662   - failed "Can't move installer to ${PROJECTDIR}"
663   - fi
  694 + for FILE in *-[0-9]*-${TARCH}.exe
  695 + do
  696 + copy_install_file ${FILE}
  697 + done
664 698  
665 699 done
666 700  
... ... @@ -677,13 +711,11 @@ addRepos() {
677 711 do
678 712 case ${ARCH} in
679 713 x86_32)
680   - # https://download.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_Leap_15.1/windows:mingw:win32.repo
681   - REPO_ARCH="win32"
  714 + sudo zypper ar obs://windows:mingw:win32 mingw32
682 715 ;;
683 716  
684 717 x86_64)
685   - # https://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_Leap_15.1/windows:mingw:win64.repo
686   - REPO_ARCH="win64"
  718 + sudo zypper ar obs://windows:mingw:win64 mingw64
687 719 ;;
688 720  
689 721 *)
... ... @@ -691,11 +723,11 @@ addRepos() {
691 723  
692 724 esac
693 725  
694   -
695   - echo zypper ar "https://download.opensuse.org/repositories/windows:/mingw:/${REPO_ARCH}/$(echo ${PRETTY_NAME} | sed "s@ @_@g")" ${REPO_ARCH}
696   -
697 726 done
698 727  
  728 + sudo zypper ar obs://home:PerryWerneck:pw3270 pw3270
  729 + sudo zypper ref
  730 +
699 731 }
700 732  
701 733 #
... ... @@ -740,6 +772,10 @@ do
740 772 rm -fr ~/public_html/win/${PRODUCT_NAME}/{x86_32,x86_64}
741 773 fi
742 774  
  775 + if [ ! -z "${XDG_PUBLICSHARE_DIR}" ] && [ -d "${XDG_PUBLICSHARE_DIR}/${PRODUCT_NAME}" ]; then
  776 + rm -fr ${XDG_PUBLICSHARE_DIR}/${PRODUCT_NAME}/{x86_32,x86_64}
  777 + fi
  778 +
743 779 ;;
744 780  
745 781 EXTRA-PACKAGES)
... ... @@ -804,12 +840,23 @@ do
804 840 fi
805 841  
806 842 if [ ! -z ${WIN_PACKAGE_SERVER} ]; then
  843 +
807 844 echo " --no-publish Don't publish binaries in ${WIN_PACKAGE_SERVER}/${PRODUCT_NAME}"
808 845 echo " --publish Publish binaries in ${WIN_PACKAGE_SERVER}/${PRODUCT_NAME}"
  846 +
  847 + else
  848 +
  849 + if [ -x ~/bin/sync.${PRODUCT_NAME} ]; then
  850 +
  851 + echo " --no-publish Don't call ~/bin/sync.${PRODUCT_NAME}"
  852 + echo " --publish Call ~/bin/sync.${PRODUCT_NAME} when build finishes"
  853 +
  854 + fi
  855 +
809 856 fi
810 857  
811 858 if [ -d ~/public_html/win/${PRODUCT_NAME} ]; then
812   - echo " --clear Replace the contents of ~/public_html/win/${PRODUCT_NAME}/{x86_32,x86_64}"
  859 + echo " --clear Replace the contents of public folders"
813 860 fi
814 861  
815 862 echo ""
... ... @@ -886,6 +933,16 @@ done
886 933 makeRuntime
887 934 makeInstaller
888 935  
  936 +if [ "${PUBLISH}" == "1" ] && [ -x ~/bin/sync.${PRODUCT_NAME} ]; then
  937 +
  938 + echo "Calling sync script..."
  939 + ~/bin/sync.${PRODUCT_NAME}
  940 + if [ "$?" != "0" ]; then
  941 + failed "Can't sync folders"
  942 + fi
  943 +
  944 +fi
  945 +
889 946 cleanup
890 947  
891 948  
... ...
win/pw3270.nsi.in
... ... @@ -43,9 +43,9 @@ XPStyle on
43 43 installDir "$@PROGRAMFILES@\@PRODUCT_NAME@"
44 44  
45 45 #define the installer icon
46   -!define MUI_ICON "@PACKAGE@.ico"
47   -!define MUI_UNICON "@PACKAGE@.ico"
48   -icon "@PACKAGE@.ico"
  46 +!define MUI_ICON "@PRODUCT_NAME@.ico"
  47 +!define MUI_UNICON "@PRODUCT_NAME@.ico"
  48 +icon "@PRODUCT_NAME@.ico"
49 49  
50 50 # Get installation folder from registry if available
51 51 InstallDirRegKey HKLM "Software\@PRODUCT_NAME@" "InstallLocation"
... ... @@ -101,15 +101,17 @@ SubSection &quot;@PRODUCT_NAME@&quot; SecMain
101 101 createShortCut "$DESKTOP\@PRODUCT_NAME@.lnk" "$INSTDIR\@PRODUCT_NAME@.exe"
102 102  
103 103 # Binary files
104   - file "/oname=$INSTDIR\@PRODUCT_NAME@.exe" "@PACKAGE@.exe"
105   - file "/oname=$INSTDIR\@PRODUCT_NAME@.ico" "@PACKAGE@.ico"
106   - file "/oname=$INSTDIR\lib@LIBRARY_NAME@.dll" "lib@LIBRARY_NAME@.dll"
107   - file "/oname=$INSTDIR\libv3270.dll" "libv3270.dll"
  104 + file "/oname=$INSTDIR\@PRODUCT_NAME@.exe" "bin\@PRODUCT_NAME@.exe"
  105 + file "/oname=$INSTDIR\@PRODUCT_NAME@.ico" "bin\@PRODUCT_NAME@.ico"
  106 + file "/oname=$INSTDIR\lib@LIBRARY_NAME@.dll" "bin\lib@LIBRARY_NAME@.dll"
  107 + file "/oname=$INSTDIR\libv3270.dll" "bin\libv3270.dll"
  108 +
  109 + # Register file association
108 110  
109 111 # Configuration files
110   - file "/oname=$INSTDIR\@PRODUCT_NAME@-logo.png" "@PRODUCT_NAME@\@PRODUCT_NAME@-logo.png"
111   - file "/oname=$INSTDIR\@PRODUCT_NAME@.png" "@PRODUCT_NAME@\@PRODUCT_NAME@.png"
112   - file "/oname=$INSTDIR\colors.conf" "@PRODUCT_NAME@\colors.conf"
  112 + file "/oname=$INSTDIR\@PRODUCT_NAME@-logo.png" "share\@PRODUCT_NAME@\@PRODUCT_NAME@-logo.png"
  113 + file "/oname=$INSTDIR\@PRODUCT_NAME@.png" "share\@PRODUCT_NAME@\@PRODUCT_NAME@.png"
  114 + file "/oname=$INSTDIR\colors.conf" "share\@PRODUCT_NAME@\colors.conf"
113 115  
114 116 # Documentation files
115 117 file "/oname=$INSTDIR\AUTHORS" "AUTHORS"
... ... @@ -122,18 +124,18 @@ SubSection &quot;@PRODUCT_NAME@&quot; SecMain
122 124  
123 125 # UI definition files
124 126 CreateDirectory "$INSTDIR\ui"
125   - file "/oname=$INSTDIR\ui\application.xml" "@PRODUCT_NAME@\ui\application.xml"
126   - file "/oname=$INSTDIR\ui\window.xml" "@PRODUCT_NAME@\ui\window.xml"
  127 + file "/oname=$INSTDIR\ui\application.xml" "share\@PRODUCT_NAME@\ui\application.xml"
  128 + file "/oname=$INSTDIR\ui\window.xml" "share\@PRODUCT_NAME@\ui\window.xml"
127 129  
128 130 # Charset definition files
129 131 CreateDirectory "$INSTDIR\remap"
130   - file "/oname=$INSTDIR\remap\bracket.xml" "@PRODUCT_NAME@\remap\bracket.xml"
  132 + file "/oname=$INSTDIR\remap\bracket.xml" "share\@PRODUCT_NAME@\remap\bracket.xml"
131 133  
132 134 # Locale files
133 135 CreateDirectory "$INSTDIR\locale\pt_BR\LC_MESSAGES"
134   - file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\@PACKAGE@.mo" "locale\pt_BR\LC_MESSAGES\@PACKAGE@.mo"
135   - file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\lib@LIBRARY_NAME@.mo" "locale\pt_BR\LC_MESSAGES\lib@LIBRARY_NAME@.mo"
136   - file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\libv3270.mo" "locale\pt_BR\LC_MESSAGES\libv3270.mo"
  136 + file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\@PACKAGE@.mo" "share\locale\pt_BR\LC_MESSAGES\@PACKAGE@.mo"
  137 + file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\lib@LIBRARY_NAME@.mo" "share\locale\pt_BR\LC_MESSAGES\lib@LIBRARY_NAME@.mo"
  138 + file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\libv3270.mo" "share\locale\pt_BR\LC_MESSAGES\libv3270.mo"
137 139  
138 140 # define uninstaller name
139 141 SetRegView 32
... ... @@ -159,11 +161,45 @@ SubSection &quot;@PRODUCT_NAME@&quot; SecMain
159 161 # Default settings
160 162 SetRegView @WINARCH@
161 163  
  164 + # Setup log file
  165 + # https://docs.microsoft.com/en-us/windows/win32/eventlog/event-sources
  166 + WriteRegStr HKLM "SYSTEM\CurrentControlSet\Services\EventLog\@PRODUCT_NAME@" \
  167 + "PackageVersion" "@PACKAGE_VERSION@"
  168 +
162 169 # Required for IPC Library.
163 170 WriteRegStr HKLM "Software\@PRODUCT_NAME@" "InstallLocation" "$INSTDIR"
164 171  
165 172 # Customized options
166   -
  173 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "autoconnect" 0x00000001
  174 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "blankfill" 0x00000000
  175 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "bold" 0x00000000
  176 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "keepselected" 0x00000001
  177 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "marginedpaste" 0x00000001
  178 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "rectselect" 0x00000000
  179 +
  180 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "monocase" 0x00000000
  181 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "cursorblink" 0x00000001
  182 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "showtiming" 0x00000001
  183 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "cursorpos" 0x00000001
  184 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "linewrap" 0x00000000
  185 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "crosshair" 0x00000000
  186 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "fullscreen" 0x00000000
  187 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "autoreconnect" 0x00000001
  188 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "insert" 0x00000000
  189 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "smartpaste" 0x00000001
  190 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "beep" 0x00000001
  191 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "fieldattr" 0x00000000
  192 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "altscreen" 0x00000001
  193 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "keepalive" 0x00000000
  194 +
  195 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "dstrace" 0x00000000
  196 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "screentrace" 0x00000000
  197 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "eventtrace" 0x00000000
  198 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "nettrace" 0x00000000
  199 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "ssltrace" 0x00000000
  200 +
  201 + WriteRegStr HKLM "Software\@PRODUCT_NAME@" "font-family" "Lucida Console"
  202 + WriteRegStr HKLM "Software\@PRODUCT_NAME@" "colors" "rgb(24,24,24);rgb(79,156,254);rgb(237,74,70);rgb(235,110,183);rgb(131,199,70);rgb(86,216,201);rgb(239,197,65);rgb(222,222,222);rgb(59,59,59);rgb(54,142,171);rgb(250,145,83);rgb(165,128,226);rgb(112,180,51);rgb(65,199,185);rgb(219,179,45);rgb(119,119,119);rgb(131,199,70);rgb(237,74,70);rgb(65,199,185);rgb(250,145,83);rgb(37,37,37);rgb(222,222,222);rgb(222,222,222);rgb(24,24,24);rgb(222,222,222);rgb(79,156,254);rgb(131,199,70);rgb(239,197,65);rgb(239,197,65)"
167 203  
168 204 sectionEnd
169 205  
... ... @@ -176,20 +212,20 @@ SubSection &quot;@PRODUCT_NAME@&quot; SecMain
176 212  
177 213 SubSection "Plugins" SecPLugin
178 214  
179   - Section /o "Remote control" IPCPlugin
  215 + Section "Remote control" IPCPlugin
180 216  
181 217 setOutPath $INSTDIR
182 218  
183 219 ${DisableX64FSRedirection}
184 220  
185 221 CreateDirectory "$INSTDIR\plugins"
186   - file "/oname=$INSTDIR\plugins\ipcserver.dll" "@PRODUCT_NAME@-plugins\ipcserver.dll"
  222 + file "/oname=$INSTDIR\plugins\ipcserver.dll" "lib\@PRODUCT_NAME@-plugins\ipcserver.dll"
187 223  
188 224 CreateDirectory "$INSTDIR\locale\pt_BR\LC_MESSAGES"
189   - file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\libipc3270.mo" "locale\pt_BR\LC_MESSAGES\libipc3270.mo"
  225 + file "/oname=$INSTDIR\locale\pt_BR\LC_MESSAGES\libipc3270.mo" "share\locale\pt_BR\LC_MESSAGES\libipc3270.mo"
190 226  
191 227 ${@NSISREDIR@}
192   - file "/oname=$SYSDIR\libipc3270.dll" "libipc3270.dll"
  228 + file "/oname=$SYSDIR\libipc3270.dll" "bin\libipc3270.dll"
193 229  
194 230 sectionEnd
195 231  
... ... @@ -199,23 +235,23 @@ SubSection &quot;@PRODUCT_NAME@&quot; SecMain
199 235 SubSection "Extra modules" Languages
200 236  
201 237 !ifdef WITHLIBHLLAPI
202   - Section /o "HLLAPI" HLLAPIBinding
  238 + Section "HLLAPI" HLLAPIBinding
203 239  
204 240 ${@NSISREDIR@}
205 241  
206 242 # Install HLLAPI connector
207   - file "/oname=$SYSDIR\hllapi.dll" "libhllapi.dll"
  243 + file "/oname=$SYSDIR\hllapi.dll" "bin\libhllapi.dll"
208 244  
209 245 # Install with "lib" prefix for compatibility.
210   - file "/oname=$SYSDIR\libhllapi.dll" "libhllapi.dll"
  246 + file "/oname=$SYSDIR\libhllapi.dll" "bin\libhllapi.dll"
211 247  
212 248 SectionEnd
213 249 !endif
214 250  
215 251 Section "KEYPADS" Keypads
216 252  
217   - file "/oname=$INSTDIR\keypad\00-right.xml" "@PRODUCT_NAME@\keypad\00-right.xml"
218   - file "/oname=$INSTDIR\keypad\10-bottom.xml" "@PRODUCT_NAME@\keypad\10-bottom.xml"
  253 + file "/oname=$INSTDIR\keypad\00-right.xml" "share\@PRODUCT_NAME@\keypad\00-right.xml"
  254 + file "/oname=$INSTDIR\keypad\10-bottom.xml" "share\@PRODUCT_NAME@\keypad\10-bottom.xml"
219 255  
220 256 SectionEnd
221 257  
... ... @@ -247,22 +283,20 @@ SubSection &quot;@PRODUCT_NAME@&quot; SecMain
247 283 CreateDirectory "$INSTDIR\sdk\def"
248 284 CreateDirectory "$INSTDIR\sdk\lib"
249 285  
250   - file "/oname=$INSTDIR\sdk\def\lib@LIBRARY_NAME@.def" "@PRODUCT_NAME@\def\lib@LIBRARY_NAME@.def"
251   - file "/oname=$INSTDIR\sdk\lib\lib3270.dll.a" "lib@LIBRARY_NAME@.dll.a"
252   - file "/oname=$INSTDIR\sdk\lib\lib3270.delayed.a" "lib@LIBRARY_NAME@.delayed.a"
253   - file "/oname=$INSTDIR\sdk\lib\lib3270.static.a" "lib@LIBRARY_NAME@.static.a"
254   -
255   - file "/oname=$INSTDIR\sdk\lib3270.mak" "@PRODUCT_NAME@\def\lib3270.mak"
  286 + file "/oname=$INSTDIR\sdk\lib\lib3270.dll.a" "lib\lib@LIBRARY_NAME@.dll.a"
  287 + file "/oname=$INSTDIR\sdk\lib\lib3270.delayed.a" "lib\lib@LIBRARY_NAME@.delayed.a"
  288 + file "/oname=$INSTDIR\sdk\lib\lib3270.static.a" "lib\lib@LIBRARY_NAME@.static.a"
  289 + file "/oname=$INSTDIR\sdk\lib\libv3270.dll.a" "lib\libv3270.dll.a"
  290 + file "/oname=$INSTDIR\sdk\lib\libipc3270.dll.a" "lib\libipc3270.dll.a"
  291 + file "/oname=$INSTDIR\sdk\lib\libipc3270.static.a" "lib\libipc3270.static.a"
  292 + file "/oname=$INSTDIR\sdk\lib\libhllapi.dll.a" "lib\libhllapi.dll.a"
256 293  
257   - file "/oname=$INSTDIR\sdk\def\libv3270.def" "@PRODUCT_NAME@\def\libv3270.def"
258   - file "/oname=$INSTDIR\sdk\lib\libv3270.dll.a" "libv3270.dll.a"
  294 + file "/oname=$INSTDIR\sdk\lib3270.mak" "share\@PRODUCT_NAME@\def\lib3270.mak"
259 295  
260   - file "/oname=$INSTDIR\sdk\def\libipc3270.def" "@PRODUCT_NAME@\def\libipc3270.def"
261   - file "/oname=$INSTDIR\sdk\lib\libipc3270.dll.a" "libipc3270.dll.a"
262   - file "/oname=$INSTDIR\sdk\lib\libipc3270.static.a" "libipc3270.static.a"
263   -
264   - file "/oname=$INSTDIR\sdk\def\libhllapi.def" "@PRODUCT_NAME@\def\libhllapi.def"
265   - file "/oname=$INSTDIR\sdk\lib\libhllapi.dll.a" "libhllapi.dll.a"
  296 + file "/oname=$INSTDIR\sdk\def\lib@LIBRARY_NAME@.def" "share\@PRODUCT_NAME@\def\lib@LIBRARY_NAME@.def"
  297 + file "/oname=$INSTDIR\sdk\def\libv3270.def" "share\@PRODUCT_NAME@\def\libv3270.def"
  298 + file "/oname=$INSTDIR\sdk\def\libipc3270.def" "share\@PRODUCT_NAME@\def\libipc3270.def"
  299 + file "/oname=$INSTDIR\sdk\def\libhllapi.def" "share\@PRODUCT_NAME@\def\libhllapi.def"
266 300  
267 301 SetRegView @WINARCH@
268 302 WriteRegExpandStr HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PW3270_SDK_PATH" "$INSTDIR\sdk"
... ... @@ -275,7 +309,7 @@ SubSectionEnd
275 309  
276 310  
277 311 !ifdef WITHGTK
278   -Section /o "GTK+ Runtime" SecGTK
  312 +Section "GTK+ Runtime" SecGTK
279 313  
280 314 setOutPath $INSTDIR
281 315 file /r "runtime\*.*"
... ... @@ -288,6 +322,8 @@ Section &quot;Uninstall&quot;
288 322 # Always delete uninstaller first
289 323 delete $INSTDIR\uninstaller.exe
290 324  
  325 + # Remove association
  326 +
291 327 # Set SMPROGRAMS and DESKTOP path
292 328 SetShellVarContext all
293 329  
... ... @@ -315,6 +351,8 @@ Section &quot;Uninstall&quot;
315 351 SetRegView @WINARCH@
316 352 DeleteRegKey HKLM "Software\@PRODUCT_NAME@"
317 353 DeleteRegValue HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "PW3270_SDK_PATH"
  354 + DeleteRegKey HKLM "SYSTEM\CurrentControlSet\Services\EventLog\@PRODUCT_NAME@"
  355 +
318 356 SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000
319 357  
320 358 DeleteRegKey HKLM "Software\GSettings\apps\@PACKAGE_NAME@\@PRODUCT_NAME@"
... ... @@ -349,16 +387,16 @@ Function .onInit
349 387 ClearErrors
350 388 ${GetOptions} $R0 /SDK= $0
351 389  
352   - ${if} $0 == "NO"
  390 + ${if} $0 == "YES"
353 391  
354 392 SectionGetFlags ${SDK} $0
355   - IntOp $0 $0 & ${SECTION_OFF}
  393 + IntOp $0 $0 | ${SF_SELECTED}
356 394 SectionSetFlags ${SDK} $0
357 395  
358 396 ${else}
359 397  
360 398 SectionGetFlags ${SDK} $0
361   - IntOp $0 $0 | ${SF_SELECTED}
  399 + IntOp $0 $0 & ${SECTION_OFF}
362 400 SectionSetFlags ${SDK} $0
363 401  
364 402 ${EndIf}
... ... @@ -375,13 +413,8 @@ Function .onInit
375 413 ClearErrors
376 414 ${GetOptions} $R0 /DOTNET= $0
377 415  
378   - ${if} $0 == "NO"
379   -
380   - SectionGetFlags ${DOTNET} $0
381   - IntOp $0 $0 & ${SECTION_OFF}
382   - SectionSetFlags ${DOTNET} $0
383   -
384   - ${else}
  416 + # Default = NO
  417 + ${if} $0 == "YES"
385 418  
386 419 SectionGetFlags ${DOTNET} $0
387 420 IntOp $0 $0 | ${SF_SELECTED}
... ... @@ -391,6 +424,12 @@ Function .onInit
391 424 IntOp $0 $0 | ${SF_SELECTED}
392 425 SectionSetFlags ${IPCPlugin} $0
393 426  
  427 + ${else}
  428 +
  429 + SectionGetFlags ${DOTNET} $0
  430 + IntOp $0 $0 & ${SECTION_OFF}
  431 + SectionSetFlags ${DOTNET} $0
  432 +
394 433 ${EndIf}
395 434  
396 435 Pop $0
... ... @@ -406,6 +445,7 @@ Function .onInit
406 445 ClearErrors
407 446 ${GetOptions} $R0 /HLLAPI= $0
408 447  
  448 + # Default = YES
409 449 ${if} $0 == "NO"
410 450  
411 451 SectionGetFlags ${HLLAPIBinding} $0
... ... @@ -422,6 +462,7 @@ Function .onInit
422 462 IntOp $0 $0 | ${SF_SELECTED}
423 463 SectionSetFlags ${IPCPlugin} $0
424 464  
  465 +
425 466 ${EndIf}
426 467  
427 468 Pop $0
... ...