Commit edfaad6a38d8172919c49f597b48977e6ef01c0b

Authored by Perry Werneck
Committed by GitHub
2 parents 09d6a526 012f1a96
Exists in master and in 1 other branch develop

Merge pull request #36 from PerryWerneck/develop

Fixes and enhancements
.gitignore
... ... @@ -70,4 +70,5 @@ ABOUT-NLS
70 70 intl
71 71 m4
72 72 po
  73 +app-manifest.xml
73 74  
... ...
Makefile.in
... ... @@ -55,8 +55,8 @@ SOURCES= \
55 55 $(wildcard $(srcdir)/src/main/@OSNAME@/*.rc)
56 56  
57 57 SCHEMAS= \
58   - $(wildcard $(srcdir)/schemas/@OSNAME@/*.gschema.xml) \
59   - $(wildcard $(srcdir)/schemas/common/*.gschema.xml)
  58 + $(wildcard schemas/@OSNAME@/*.gschema.xml) \
  59 + $(wildcard schemas/common/*.gschema.xml)
60 60  
61 61 #---[ Tools ]----------------------------------------------------------------------------
62 62  
... ... @@ -138,6 +138,8 @@ $(OBJDBG)/%.o: \
138 138 gschemas.compiled: \
139 139 $(foreach SCHEMA, $(notdir $(SCHEMAS)), $(OBJDIR)/schemas/$(SCHEMA))
140 140  
  141 + @$(MKDIR) $(OBJDIR)/schemas
  142 +
141 143 @glib-compile-schemas \
142 144 --targetdir=$(@D) \
143 145 $(OBJDIR)/schemas
... ... @@ -205,7 +207,7 @@ $(POTDIR)/%.pot: \
205 207 @touch $@
206 208  
207 209 $(OBJDIR)/schemas/%.xml: \
208   - $(srcdir)/schemas/@OSNAME@/%.xml
  210 + schemas/@OSNAME@/%.xml
209 211  
210 212 @$(MKDIR) $(@D)
211 213 @cp "$^" "$@"
... ... @@ -238,6 +240,16 @@ install-%: \
238 240 -colors 256 \
239 241 $@
240 242  
  243 +%.png: \
  244 + $(srcdir)/branding/%.svg
  245 +
  246 + @echo $@ ...
  247 + @$(MKDIR) $(@D)
  248 + @$(CONVERT) \
  249 + +antialias \
  250 + -background transparent \
  251 + $< \
  252 + $@
241 253  
242 254 #---[ Release Targets ]------------------------------------------------------------------
243 255  
... ... @@ -301,8 +313,18 @@ install-linux-application: \
301 313 $(BINRLS)/$(PACKAGE_NAME)@EXEEXT@ \
302 314 $(DESTDIR)$(bindir)/$(PRODUCT_NAME)@EXEEXT@
303 315  
  316 +install-macos-application: \
  317 + $(BINRLS)/$(PACKAGE_NAME)@EXEEXT@
  318 +
  319 + @$(MKDIR) \
  320 + $(DESTDIR)$(bindir)
  321 +
  322 + @$(INSTALL_PROGRAM) \
  323 + $(BINRLS)/$(PACKAGE_NAME)@EXEEXT@ \
  324 + $(DESTDIR)$(bindir)/$(PRODUCT_NAME)@EXEEXT@
304 325  
305 326 install-windows-application: \
  327 + $(PRODUCT_NAME).png \
306 328 strip
307 329  
308 330 @$(MKDIR) \
... ... @@ -312,6 +334,13 @@ install-windows-application: \
312 334 $(BINRLS)/$(PACKAGE_NAME)@EXEEXT@ \
313 335 $(DESTDIR)$(bindir)/$(PRODUCT_NAME)@EXEEXT@
314 336  
  337 + @$(MKDIR) \
  338 + $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)
  339 +
  340 + @$(INSTALL_DATA) \
  341 + $(PRODUCT_NAME).png \
  342 + $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME).png
  343 +
315 344 install-icons:
316 345  
317 346 @$(MKDIR) \
... ...
README.md
... ... @@ -86,7 +86,9 @@ Updated windows installers are available on Dropbox, google drive and one drive.
86 86 ```
87 87  
88 88  
89   -## Building for macOS (using homebrew)
  89 +## Building for macOS
  90 +
  91 +### Using homebrew
90 92  
91 93 1. Build and install [libv3270](../../../libv3270)
92 94  
... ... @@ -109,4 +111,17 @@ Updated windows installers are available on Dropbox, google drive and one drive.
109 111 $ cd macos
110 112 $ ./bundle
111 113 ````
  114 +
  115 +### Using jhbuild
  116 +
  117 +1. Install jhbuild and GTK-OSX
  118 +
  119 + https://wiki.gnome.org/Projects/GTK/OSX/Building
  120 +
  121 +2. build
  122 +
  123 + ```shell
  124 + jhbuild --moduleset=https://raw.githubusercontent.com/PerryWerneck/pw3270/macos/mac/pw3270.modules build pw3270
  125 + ```
  126 +
112 127  
... ...
branding/Makefile.in
... ... @@ -153,6 +153,10 @@ install-linux: \
153 153 $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/icons/$(PRODUCT_NAME)-symbolic.svg \
154 154 $(DESTDIR)$(datarootdir)/icons/$(APPLICATION_ID)-symbolic.svg
155 155  
  156 +install-macos: \
  157 + $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME).svg \
  158 + $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME)-logo.svg
  159 +
156 160 install-windows: \
157 161 $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME).svg \
158 162 $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PRODUCT_NAME)-logo.svg \
... ...
configure.ac
... ... @@ -40,6 +40,9 @@ AC_CONFIG_HEADER([src/include/config.h])
40 40 dnl Initialise automake stuff.
41 41 AM_INIT_AUTOMAKE
42 42  
  43 +dnl Set gettext version
  44 +AM_GNU_GETTEXT_VERSION([0.14])
  45 +
43 46 dnl Checks for programs.
44 47 AC_PROG_CC
45 48 AC_PROG_SED
... ... @@ -67,6 +70,7 @@ case &quot;$host&quot; in
67 70 AC_SUBST(WIN32_FILE_VERSION,$app_win32_file_version)
68 71  
69 72 AC_CONFIG_FILES(src/main/windows/resources.rc)
  73 + AC_CONFIG_FILES(src/main/windows/app-manifest.xml)
70 74  
71 75 # Windows and linux doesn't use the same defaults.
72 76 AC_CONFIG_FILES(schemas/windows/application.gschema.xml)
... ... @@ -90,6 +94,17 @@ case &quot;$host&quot; in
90 94  
91 95 ;;
92 96  
  97 + *-apple-darwin*)
  98 + app_cv_osname="macos"
  99 + app_rls_ldflags=""
  100 +
  101 + CFLAGS="$CFLAGS -pthread"
  102 + LDFLAGS="$LDFLAGS -pthread"
  103 +
  104 + AC_CONFIG_FILES(schemas/macos/application.gschema.xml)
  105 + AC_CONFIG_FILES(schemas/macos/window.gschema.xml)
  106 + ;;
  107 +
93 108 *)
94 109 app_cv_osname="linux"
95 110 app_rls_ldflags=""
... ... @@ -97,9 +112,6 @@ case &quot;$host&quot; in
97 112 CFLAGS="$CFLAGS -pthread -DLIBDIR=\$(libdir)"
98 113 LDFLAGS="$LDFLAGS -pthread"
99 114  
100   - app_cv_static='no'
101   -
102   - # Windows and linux doesn't use the same window defaults.
103 115 AC_CONFIG_FILES(schemas/linux/application.gschema.xml)
104 116 AC_CONFIG_FILES(schemas/linux/window.gschema.xml)
105 117  
... ... @@ -121,7 +133,7 @@ dnl ---------------------------------------------------------------------------
121 133  
122 134 AC_PATH_TOOL([AR], [ar], [ar])
123 135 AC_PATH_TOOL([CONVERT], [convert], [no])
124   -dnl AC_PATH_TOOL([OPTIPNG],[optipng],[no])
  136 +AC_PATH_TOOL([OPTIPNG],[optipng],[no])
125 137 AC_PATH_TOOL([ZIP],[zip],[no])
126 138 AC_PATH_TOOL([DLLTOOL],[dlltool],[no])
127 139 AC_PATH_TOOL([WINDRES], [windres], [no])
... ... @@ -223,7 +235,19 @@ dnl ---------------------------------------------------------------------------
223 235  
224 236 GLIB_GSETTINGS
225 237  
226   -PKG_CHECK_MODULES( [GTK], [gtk+-3.0 glib-2.0 gmodule-2.0], AC_DEFINE(HAVE_GTK), AC_MSG_ERROR([GTK not present.]))
  238 +case "$host" in
  239 + *-mingw32|*-pc-msys)
  240 + PKG_CHECK_MODULES( [GTK], [gtk+-3.0 glib-2.0 gmodule-2.0], AC_DEFINE(HAVE_GTK), AC_MSG_ERROR([GTK not present.]))
  241 + ;;
  242 +
  243 + *-apple-darwin*)
  244 + PKG_CHECK_MODULES( [GTK], [gtk+-3.0 glib-2.0 gmodule-2.0], AC_DEFINE(HAVE_GTK), AC_MSG_ERROR([GTK not present.]))
  245 + ;;
  246 +
  247 + *)
  248 + PKG_CHECK_MODULES( [GTK], [gtk+-3.0 glib-2.0 gmodule-2.0], AC_DEFINE(HAVE_GTK), AC_MSG_ERROR([GTK not present.]))
  249 +
  250 +esac
227 251  
228 252 AC_SUBST(GTK_LIBS)
229 253 AC_SUBST(GTK_CFLAGS)
... ...
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: 2021-12-23 01:54-0300\n"
  8 +"POT-Creation-Date: 2022-05-18 15:30-0300\n"
9 9 "PO-Revision-Date: 2021-12-23 01:36-0300\n"
10 10 "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n"
11 11 "Language-Team: Brazilian Portuguese <perry.werneck@gmail.com>\n"
... ... @@ -19,34 +19,34 @@ msgstr &quot;&quot;
19 19 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
20 20 "X-Generator: Gtranslator 3.38.0\n"
21 21  
22   -#: src/objects/application/application.c:225
  22 +#: src/objects/application/application.c:211
23 23 #, c-format
24 24 msgid "\"%s\" is not a valid user interface name"
25 25 msgstr "\"%s\" não é um nome válido para interface de usuário"
26 26  
27   -#: src/objects/application/actions/about.c:110
  27 +#: src/objects/application/actions/about.c:133
28 28 #, c-format
29 29 msgid "%s for %s."
30 30 msgstr "%s para %s"
31 31  
32   -#: src/objects/application/actions/about.c:117
  32 +#: src/objects/application/actions/about.c:140
33 33 msgid "32 bits Linux"
34 34 msgstr "Linux 32 bits"
35 35  
36   -#: src/objects/application/actions/about.c:115
  36 +#: src/objects/application/actions/about.c:138
37 37 msgid "32 bits Windows"
38 38 msgstr "Windows 32 bits"
39 39  
40   -#: src/objects/actions/save.c:166 src/objects/os/linux/savedesktopicon.c:267
  40 +#: src/objects/actions/save.c:166 src/objects/os/linux/savedesktopicon.c:233
41 41 #: src/objects/os/windows/savedesktopicon.c:222
42 42 msgid "3270 session files"
43 43 msgstr "Arquivos de sessão TN3270"
44 44  
45   -#: src/objects/application/actions/about.c:119
  45 +#: src/objects/application/actions/about.c:142
46 46 msgid "64 bits Linux"
47 47 msgstr "Linux 64 bits"
48 48  
49   -#: src/objects/application/actions/about.c:113
  49 +#: src/objects/application/actions/about.c:136
50 50 msgid "64 bits Windows"
51 51 msgstr "Windows 64 bits"
52 52  
... ... @@ -57,8 +57,9 @@ msgstr &quot;&quot;
57 57 "<small><b>Alterações na posição da barra de ferramentas só tem efeito apos "
58 58 "reinício da aplicação</b></small>"
59 59  
60   -#: src/objects/application/actions/about.c:209 ui/windows.ui.xml:40
61   -#: ui/windows.ui.xml:553 ui/linux.ui.xml:40 ui/linux.ui.xml:553
  60 +#: src/objects/application/actions/about.c:232 ui/windows.ui.xml:40
  61 +#: ui/windows.ui.xml:553 ui/macos.ui.xml:40 ui/macos.ui.xml:553
  62 +#: ui/linux.ui.xml:40 ui/linux.ui.xml:553
62 63 msgid "About PW3270"
63 64 msgstr "Sobre o PW3270"
64 65  
... ... @@ -71,6 +72,7 @@ msgid &quot;Action Names&quot;
71 72 msgstr "Nome das ações"
72 73  
73 74 #: ui/windows.ui.xml:525 ui/windows.ui.xml:917 ui/windows.ui.xml:1032
  75 +#: ui/macos.ui.xml:525 ui/macos.ui.xml:917 ui/macos.ui.xml:1032
74 76 #: ui/linux.ui.xml:525 ui/linux.ui.xml:917 ui/linux.ui.xml:1032
75 77 msgid "Alert sound"
76 78 msgstr "Aviso sonoro"
... ... @@ -79,17 +81,17 @@ msgstr &quot;Aviso sonoro&quot;
79 81 msgid "All files"
80 82 msgstr "Todos os arquivos"
81 83  
82   -#: ui/windows.ui.xml:252 ui/windows.ui.xml:691 ui/linux.ui.xml:252
83   -#: ui/linux.ui.xml:691
  84 +#: ui/windows.ui.xml:252 ui/windows.ui.xml:691 ui/macos.ui.xml:252
  85 +#: ui/macos.ui.xml:691 ui/linux.ui.xml:252 ui/linux.ui.xml:691
84 86 msgid "Append to copy"
85 87 msgstr "Adicionar à cópia"
86 88  
87   -#: src/objects/application/actions/about.c:152
  89 +#: src/objects/application/actions/about.c:175
88 90 msgid "Apple version"
89 91 msgstr "Versão Apple"
90 92  
91   -#: ui/windows.ui.xml:385 ui/windows.ui.xml:665 ui/linux.ui.xml:385
92   -#: ui/linux.ui.xml:665
  93 +#: ui/windows.ui.xml:385 ui/windows.ui.xml:665 ui/macos.ui.xml:385
  94 +#: ui/macos.ui.xml:665 ui/linux.ui.xml:385 ui/linux.ui.xml:665
93 95 msgid "Application"
94 96 msgstr "Aplicação"
95 97  
... ... @@ -98,7 +100,7 @@ msgid &quot;Application menu&quot;
98 100 msgstr "Menu da aplicação"
99 101  
100 102 #: src/objects/application/actions/preferences.c:76 ui/windows.ui.xml:84
101   -#: ui/linux.ui.xml:84
  103 +#: ui/macos.ui.xml:84 ui/linux.ui.xml:84
102 104 msgid "Application preferences"
103 105 msgstr "Preferências da aplicação"
104 106  
... ... @@ -106,7 +108,7 @@ msgstr &quot;Preferências da aplicação&quot;
106 108 msgid "Apply"
107 109 msgstr "Aplicar"
108 110  
109   -#: ui/windows.ui.xml:500 ui/linux.ui.xml:500
  111 +#: ui/windows.ui.xml:500 ui/macos.ui.xml:500 ui/linux.ui.xml:500
110 112 msgid "Auto-Reconnect"
111 113 msgstr "Reconectar automaticamente"
112 114  
... ... @@ -114,20 +116,20 @@ msgstr &quot;Reconectar automaticamente&quot;
114 116 msgid "Available"
115 117 msgstr "Disponível"
116 118  
117   -#: src/objects/application/actions/about.c:155
  119 +#: src/objects/application/actions/about.c:178
118 120 msgid "Based on X3270 from"
119 121 msgstr "Baseado no X3270 por"
120 122  
121   -#: ui/windows.ui.xml:490 ui/windows.ui.xml:946 ui/linux.ui.xml:490
122   -#: ui/linux.ui.xml:946
  123 +#: ui/windows.ui.xml:490 ui/windows.ui.xml:946 ui/macos.ui.xml:490
  124 +#: ui/macos.ui.xml:946 ui/linux.ui.xml:490 ui/linux.ui.xml:946
123 125 msgid "Blank Fill"
124 126 msgstr "Completar com espaços"
125 127  
126   -#: ui/windows.ui.xml:455 ui/linux.ui.xml:455
  128 +#: ui/windows.ui.xml:455 ui/macos.ui.xml:455 ui/linux.ui.xml:455
127 129 msgid "Blinking Cursor"
128 130 msgstr "Cursor piscante"
129 131  
130   -#: ui/windows.ui.xml:505 ui/linux.ui.xml:505
  132 +#: ui/windows.ui.xml:505 ui/macos.ui.xml:505 ui/linux.ui.xml:505
131 133 msgid "Bold"
132 134 msgstr "Negrito"
133 135  
... ... @@ -174,17 +176,19 @@ msgid &quot;Change the preferences for the active session&quot;
174 176 msgstr "Modificar preferências da sessão ativa"
175 177  
176 178 #: ui/windows.ui.xml:305 ui/windows.ui.xml:725 ui/windows.ui.xml:867
  179 +#: ui/macos.ui.xml:305 ui/macos.ui.xml:725 ui/macos.ui.xml:867
177 180 #: ui/linux.ui.xml:305 ui/linux.ui.xml:725 ui/linux.ui.xml:867
178 181 msgid "Clear"
179 182 msgstr "Limpar"
180 183  
181   -#: ui/windows.ui.xml:400 ui/linux.ui.xml:400
  184 +#: ui/windows.ui.xml:400 ui/macos.ui.xml:400 ui/linux.ui.xml:400
182 185 msgid "Clipboard"
183 186 msgstr "Área de transferência"
184 187  
185 188 #: ui/windows.ui.xml:150 ui/windows.ui.xml:187 ui/windows.ui.xml:617
186   -#: ui/windows.ui.xml:654 ui/linux.ui.xml:150 ui/linux.ui.xml:187
187   -#: ui/linux.ui.xml:617 ui/linux.ui.xml:654
  189 +#: ui/windows.ui.xml:654 ui/macos.ui.xml:150 ui/macos.ui.xml:187
  190 +#: ui/macos.ui.xml:617 ui/macos.ui.xml:654 ui/linux.ui.xml:150
  191 +#: ui/linux.ui.xml:187 ui/linux.ui.xml:617 ui/linux.ui.xml:654
188 192 msgid "Clipboard contents"
189 193 msgstr "Conteúdo da área de transferência"
190 194  
... ... @@ -198,8 +202,9 @@ msgstr &quot;Fechar a janela&quot;
198 202  
199 203 #: src/objects/window/actions/close.c:60 ui/windows.ui.xml:217
200 204 #: ui/windows.ui.xml:813 ui/windows.ui.xml:1011 ui/windows.ui.xml:1118
201   -#: ui/linux.ui.xml:217 ui/linux.ui.xml:813 ui/linux.ui.xml:1011
202   -#: ui/linux.ui.xml:1118
  205 +#: ui/macos.ui.xml:217 ui/macos.ui.xml:813 ui/macos.ui.xml:1011
  206 +#: ui/macos.ui.xml:1118 ui/linux.ui.xml:217 ui/linux.ui.xml:813
  207 +#: ui/linux.ui.xml:1011 ui/linux.ui.xml:1118
203 208 msgid "Close window"
204 209 msgstr "Fechar janela"
205 210  
... ... @@ -211,7 +216,7 @@ msgstr &quot;Comentário&quot;
211 216 msgid "Connect"
212 217 msgstr "Conectar"
213 218  
214   -#: ui/windows.ui.xml:450 ui/linux.ui.xml:450
  219 +#: ui/windows.ui.xml:450 ui/macos.ui.xml:450 ui/linux.ui.xml:450
215 220 msgid "Connect on startup"
216 221 msgstr "Conectar ao iniciar"
217 222  
... ... @@ -219,71 +224,73 @@ msgstr &quot;Conectar ao iniciar&quot;
219 224 msgid "Connect to host"
220 225 msgstr "Conectar ao servidor"
221 226  
222   -#: src/objects/window/window.c:802 src/objects/window/page.c:218
  227 +#: src/objects/window/window.c:808 src/objects/window/page.c:218
223 228 msgid "Connected to host"
224 229 msgstr "Conectado no servidor"
225 230  
226   -#: src/objects/application/actions/about.c:153
  231 +#: src/objects/application/actions/about.c:176
227 232 msgid "Contributors"
228 233 msgstr "Contribuidores"
229 234  
230   -#: ui/windows.ui.xml:237 ui/windows.ui.xml:686 ui/linux.ui.xml:237
231   -#: ui/linux.ui.xml:686
  235 +#: ui/windows.ui.xml:237 ui/windows.ui.xml:686 ui/macos.ui.xml:237
  236 +#: ui/macos.ui.xml:686 ui/linux.ui.xml:237 ui/linux.ui.xml:686
232 237 msgid "Copy"
233 238 msgstr "Copiar"
234 239  
235   -#: ui/windows.ui.xml:706 ui/linux.ui.xml:706
  240 +#: ui/windows.ui.xml:706 ui/macos.ui.xml:706 ui/linux.ui.xml:706
236 241 msgid "Copy as HTML"
237 242 msgstr "Copiar como HTML"
238 243  
239   -#: ui/windows.ui.xml:711 ui/linux.ui.xml:711
  244 +#: ui/windows.ui.xml:711 ui/macos.ui.xml:711 ui/linux.ui.xml:711
240 245 msgid "Copy as image"
241 246 msgstr "Copiar como imagem"
242 247  
243   -#: ui/windows.ui.xml:247 ui/windows.ui.xml:701 ui/linux.ui.xml:247
244   -#: ui/linux.ui.xml:701
  248 +#: ui/windows.ui.xml:247 ui/windows.ui.xml:701 ui/macos.ui.xml:247
  249 +#: ui/macos.ui.xml:701 ui/linux.ui.xml:247 ui/linux.ui.xml:701
245 250 msgid "Copy as table"
246 251 msgstr "Copiar como tabela"
247 252  
248   -#: ui/windows.ui.xml:242 ui/windows.ui.xml:696 ui/linux.ui.xml:242
249   -#: ui/linux.ui.xml:696
  253 +#: ui/windows.ui.xml:242 ui/windows.ui.xml:696 ui/macos.ui.xml:242
  254 +#: ui/macos.ui.xml:696 ui/linux.ui.xml:242 ui/linux.ui.xml:696
250 255 msgid "Copy as text"
251 256 msgstr "Copiar como texto"
252 257  
253   -#: src/objects/application/actions/about.c:159
  258 +#: src/objects/application/actions/about.c:182
254 259 msgid "Copyright © 2008 Banco do Brasil S.A."
255 260 msgstr "Copyright © 2008 Banco do Brasil S.A."
256 261  
257 262 #: src/objects/os/linux/savedesktopicon.c:114
258 263 #: src/objects/os/windows/savedesktopicon.c:107
  264 +#: src/objects/os/macos/savedesktopicon.c:54
259 265 msgid "Create shortcut for the current session"
260 266 msgstr "Criar atalho para a sessão atual."
261 267  
262   -#: ui/windows.ui.xml:475 ui/windows.ui.xml:902 ui/linux.ui.xml:475
263   -#: ui/linux.ui.xml:902
  268 +#: ui/windows.ui.xml:475 ui/windows.ui.xml:902 ui/macos.ui.xml:475
  269 +#: ui/macos.ui.xml:902 ui/linux.ui.xml:475 ui/linux.ui.xml:902
264 270 msgid "Cross hair cursor"
265 271 msgstr "Cursor mira"
266 272  
267   -#: ui/windows.ui.xml:177 ui/windows.ui.xml:644 ui/linux.ui.xml:177
268   -#: ui/linux.ui.xml:644
  273 +#: ui/windows.ui.xml:177 ui/windows.ui.xml:644 ui/macos.ui.xml:177
  274 +#: ui/macos.ui.xml:644 ui/linux.ui.xml:177 ui/linux.ui.xml:644
269 275 msgid "Current Screen"
270 276 msgstr "Tela atual"
271 277  
272   -#: ui/windows.ui.xml:140 ui/windows.ui.xml:607 ui/linux.ui.xml:140
273   -#: ui/linux.ui.xml:607
  278 +#: ui/windows.ui.xml:140 ui/windows.ui.xml:607 ui/macos.ui.xml:140
  279 +#: ui/macos.ui.xml:607 ui/linux.ui.xml:140 ui/linux.ui.xml:607
274 280 msgid "Current screen"
275 281 msgstr "Tela atual"
276 282  
277   -#: ui/windows.ui.xml:670 ui/linux.ui.xml:670
  283 +#: ui/windows.ui.xml:670 ui/macos.ui.xml:670 ui/linux.ui.xml:670
278 284 msgid "Current session"
279 285 msgstr "Sessão atual"
280 286  
281   -#: ui/windows.ui.xml:257 ui/windows.ui.xml:716 ui/linux.ui.xml:257
282   -#: ui/linux.ui.xml:716
  287 +#: ui/windows.ui.xml:257 ui/windows.ui.xml:716 ui/macos.ui.xml:257
  288 +#: ui/macos.ui.xml:716 ui/linux.ui.xml:257 ui/linux.ui.xml:716
283 289 msgid "Cut"
284 290 msgstr "Recortar"
285 291  
286 292 #: ui/windows.ui.xml:315 ui/windows.ui.xml:735 ui/windows.ui.xml:877
  293 +#: ui/macos.ui.xml:315 ui/macos.ui.xml:735 ui/macos.ui.xml:877
287 294 #: ui/linux.ui.xml:315 ui/linux.ui.xml:735 ui/linux.ui.xml:877
288 295 msgid "Delete Field"
289 296 msgstr "Apagar campo"
... ... @@ -292,17 +299,18 @@ msgstr &quot;Apagar campo&quot;
292 299 msgid "Description"
293 300 msgstr "Descrição"
294 301  
295   -#: ui/windows.ui.xml:808 ui/windows.ui.xml:1006 ui/linux.ui.xml:808
296   -#: ui/linux.ui.xml:1006
  302 +#: ui/windows.ui.xml:808 ui/windows.ui.xml:1006 ui/macos.ui.xml:808
  303 +#: ui/macos.ui.xml:1006 ui/linux.ui.xml:808 ui/linux.ui.xml:1006
297 304 msgid "Disconnect"
298 305 msgstr "Desconectar"
299 306  
300   -#: src/objects/window/window.c:802 src/objects/window/window.c:829
  307 +#: src/objects/window/window.c:808 src/objects/window/window.c:835
301 308 #: src/objects/window/page.c:207
302 309 msgid "Disconnected from host"
303 310 msgstr "Desconectado do servidor"
304 311  
305 312 #: ui/windows.ui.xml:540 ui/windows.ui.xml:929 ui/windows.ui.xml:1045
  313 +#: ui/macos.ui.xml:540 ui/macos.ui.xml:929 ui/macos.ui.xml:1045
306 314 #: ui/linux.ui.xml:540 ui/linux.ui.xml:929 ui/linux.ui.xml:1045
307 315 msgid "Dynamic font spacing"
308 316 msgstr "Espaçamento dinâmico"
... ... @@ -332,16 +340,19 @@ msgid &quot;End&quot;
332 340 msgstr "Final"
333 341  
334 342 #: ui/windows.ui.xml:310 ui/windows.ui.xml:730 ui/windows.ui.xml:872
  343 +#: ui/macos.ui.xml:310 ui/macos.ui.xml:730 ui/macos.ui.xml:872
335 344 #: ui/linux.ui.xml:310 ui/linux.ui.xml:730 ui/linux.ui.xml:872
336 345 msgid "Erase input"
337 346 msgstr "Apagar campos"
338 347  
339 348 #: ui/windows.ui.xml:320 ui/windows.ui.xml:740 ui/windows.ui.xml:882
  349 +#: ui/macos.ui.xml:320 ui/macos.ui.xml:740 ui/macos.ui.xml:882
340 350 #: ui/linux.ui.xml:320 ui/linux.ui.xml:740 ui/linux.ui.xml:882
341 351 msgid "Erase to end of field"
342 352 msgstr "Apagar até o final do campo"
343 353  
344 354 #: ui/windows.ui.xml:325 ui/windows.ui.xml:745 ui/windows.ui.xml:887
  355 +#: ui/macos.ui.xml:325 ui/macos.ui.xml:745 ui/macos.ui.xml:887
345 356 #: ui/linux.ui.xml:325 ui/linux.ui.xml:745 ui/linux.ui.xml:887
346 357 msgid "Erase to end of line"
347 358 msgstr "Apagar até o final da linha"
... ... @@ -350,7 +361,7 @@ msgstr &quot;Apagar até o final da linha&quot;
350 361 msgid "Error starting session"
351 362 msgstr "Erro iniciando sessão"
352 363  
353   -#: ui/windows.ui.xml:353 ui/linux.ui.xml:353
  364 +#: ui/windows.ui.xml:353 ui/macos.ui.xml:353 ui/linux.ui.xml:353
354 365 msgid "Field attributes"
355 366 msgstr "Atributos de campo"
356 367  
... ... @@ -358,11 +369,12 @@ msgstr &quot;Atributos de campo&quot;
358 369 msgid "File for session preferences"
359 370 msgstr "Arquivo para preferências da sessão"
360 371  
361   -#: ui/windows.ui.xml:470 ui/linux.ui.xml:470
  372 +#: ui/windows.ui.xml:470 ui/macos.ui.xml:470 ui/linux.ui.xml:470
362 373 msgid "Full Screen"
363 374 msgstr "Tela cheia"
364 375  
365 376 #: ui/windows.ui.xml:779 ui/windows.ui.xml:955 ui/windows.ui.xml:1050
  377 +#: ui/macos.ui.xml:779 ui/macos.ui.xml:955 ui/macos.ui.xml:1050
366 378 #: ui/linux.ui.xml:779 ui/linux.ui.xml:955 ui/linux.ui.xml:1050
367 379 msgid "Full screen"
368 380 msgstr "Tela cheia"
... ... @@ -371,16 +383,16 @@ msgstr &quot;Tela cheia&quot;
371 383 msgid "Generic name"
372 384 msgstr "Nome genérico"
373 385  
374   -#: ui/windows.ui.xml:37 ui/windows.ui.xml:550 ui/linux.ui.xml:37
375   -#: ui/linux.ui.xml:550
  386 +#: ui/windows.ui.xml:37 ui/windows.ui.xml:550 ui/macos.ui.xml:37
  387 +#: ui/macos.ui.xml:550 ui/linux.ui.xml:37 ui/linux.ui.xml:550
376 388 msgid "Help"
377 389 msgstr "Ajuda"
378 390  
379   -#: ui/windows.ui.xml:390 ui/linux.ui.xml:390
  391 +#: ui/windows.ui.xml:390 ui/macos.ui.xml:390 ui/linux.ui.xml:390
380 392 msgid "Host and Emulation settings"
381 393 msgstr "Configuração de servidor e emulação"
382 394  
383   -#: src/objects/application/actions/about.c:111 src/objects/window/window.c:592
  395 +#: src/objects/application/actions/about.c:134 src/objects/window/window.c:592
384 396 #: src/objects/os/linux/savedesktopicon.c:102
385 397 #: src/objects/os/windows/savedesktopicon.c:269
386 398 msgid "IBM 3270 Terminal emulator"
... ... @@ -422,7 +434,7 @@ msgstr &quot;Apenas ícones&quot;
422 434 msgid "If the action can be activated"
423 435 msgstr "Se a ação pode ser ativada"
424 436  
425   -#: ui/windows.ui.xml:1022 ui/linux.ui.xml:1022
  437 +#: ui/windows.ui.xml:1022 ui/macos.ui.xml:1022 ui/linux.ui.xml:1022
426 438 msgid "Insert"
427 439 msgstr "Inserção"
428 440  
... ... @@ -442,11 +454,11 @@ msgstr &quot;Itens empacotados do início para o final&quot;
442 454 msgid "Itens"
443 455 msgstr "Itens"
444 456  
445   -#: ui/windows.ui.xml:515 ui/linux.ui.xml:515
  457 +#: ui/windows.ui.xml:515 ui/macos.ui.xml:515 ui/linux.ui.xml:515
446 458 msgid "Keep selected"
447 459 msgstr "Manter selecionado"
448 460  
449   -#: ui/windows.ui.xml:395 ui/linux.ui.xml:395
  461 +#: ui/windows.ui.xml:395 ui/macos.ui.xml:395 ui/linux.ui.xml:395
450 462 msgid "Keyboard accelerators"
451 463 msgstr "Atalhos de teclado"
452 464  
... ... @@ -470,7 +482,7 @@ msgstr &quot;Largura do painel em colunas&quot;
470 482 msgid "Keypads"
471 483 msgstr "Painéis"
472 484  
473   -#: src/objects/application/actions/about.c:163
  485 +#: src/objects/application/actions/about.c:186
474 486 msgid "LICENSE"
475 487 msgstr "LICENCA"
476 488  
... ... @@ -490,56 +502,56 @@ msgstr &quot;Esquerda&quot;
490 502 msgid "List of the available and unpacked actions"
491 503 msgstr "Lista de ações disponíveis ainda não empacotadas"
492 504  
493   -#: src/objects/application/application.c:179
  505 +#: src/objects/application/application.c:164
494 506 msgid "Log name"
495 507 msgstr "Nome do arquivo de log"
496 508  
497   -#: ui/windows.ui.xml:72 ui/linux.ui.xml:72
  509 +#: ui/windows.ui.xml:72 ui/macos.ui.xml:72 ui/linux.ui.xml:72
498 510 msgid "Main Menu"
499 511 msgstr "Menu principal"
500 512  
501   -#: ui/windows.ui.xml:67 ui/linux.ui.xml:67
  513 +#: ui/windows.ui.xml:67 ui/macos.ui.xml:67 ui/linux.ui.xml:67
502 514 msgid "Main Toolbar"
503 515 msgstr "Barra de ferramentas"
504 516  
505   -#: ui/windows.ui.xml:1093 ui/linux.ui.xml:1093
  517 +#: ui/windows.ui.xml:1093 ui/macos.ui.xml:1093 ui/linux.ui.xml:1093
506 518 msgid "Main menu"
507 519 msgstr "Menu principal"
508 520  
509   -#: src/objects/application/actions/about.c:151
  521 +#: src/objects/application/actions/about.c:174
510 522 msgid "Maintainers"
511 523 msgstr "Mantenedores"
512 524  
513   -#: ui/windows.ui.xml:348 ui/linux.ui.xml:348
  525 +#: ui/windows.ui.xml:348 ui/macos.ui.xml:348 ui/linux.ui.xml:348
514 526 msgid "Menu"
515 527 msgstr "Menu"
516 528  
517   -#: ui/windows.ui.xml:419 ui/windows.ui.xml:1059 ui/linux.ui.xml:419
518   -#: ui/linux.ui.xml:1059
  529 +#: ui/windows.ui.xml:419 ui/windows.ui.xml:1059 ui/macos.ui.xml:419
  530 +#: ui/macos.ui.xml:1059 ui/linux.ui.xml:419 ui/linux.ui.xml:1059
519 531 msgid "Model 2 - 80x24"
520 532 msgstr "Modelo 2 - 80x24"
521 533  
522   -#: ui/windows.ui.xml:424 ui/windows.ui.xml:1064 ui/linux.ui.xml:424
523   -#: ui/linux.ui.xml:1064
  534 +#: ui/windows.ui.xml:424 ui/windows.ui.xml:1064 ui/macos.ui.xml:424
  535 +#: ui/macos.ui.xml:1064 ui/linux.ui.xml:424 ui/linux.ui.xml:1064
524 536 msgid "Model 3 - 80x32"
525 537 msgstr "Modelo 3 - 80x32"
526 538  
527   -#: ui/windows.ui.xml:429 ui/windows.ui.xml:1069 ui/linux.ui.xml:429
528   -#: ui/linux.ui.xml:1069
  539 +#: ui/windows.ui.xml:429 ui/windows.ui.xml:1069 ui/macos.ui.xml:429
  540 +#: ui/macos.ui.xml:1069 ui/linux.ui.xml:429 ui/linux.ui.xml:1069
529 541 msgid "Model 4 - 80x43"
530 542 msgstr "Modelo 4 - 80x43"
531 543  
532   -#: ui/windows.ui.xml:434 ui/windows.ui.xml:1074 ui/linux.ui.xml:434
533   -#: ui/linux.ui.xml:1074
  544 +#: ui/windows.ui.xml:434 ui/windows.ui.xml:1074 ui/macos.ui.xml:434
  545 +#: ui/macos.ui.xml:1074 ui/linux.ui.xml:434 ui/linux.ui.xml:1074
534 546 msgid "Model 5 - 132x27"
535 547 msgstr "Modelo 5 - 132x27"
536 548  
537   -#: ui/windows.ui.xml:460 ui/windows.ui.xml:924 ui/linux.ui.xml:460
538   -#: ui/linux.ui.xml:924
  549 +#: ui/windows.ui.xml:460 ui/windows.ui.xml:924 ui/macos.ui.xml:460
  550 +#: ui/macos.ui.xml:924 ui/linux.ui.xml:460 ui/linux.ui.xml:924
539 551 msgid "Monocase"
540 552 msgstr "Só Maiúsculas"
541 553  
542   -#: ui/windows.ui.xml:535 ui/linux.ui.xml:535
  554 +#: ui/windows.ui.xml:535 ui/macos.ui.xml:535 ui/linux.ui.xml:535
543 555 msgid "Network keep alive"
544 556 msgstr "Network keep alive"
545 557  
... ... @@ -567,11 +579,11 @@ msgstr &quot;Nova janela com sessão padrão&quot;
567 579 msgid "Open Session"
568 580 msgstr "Abrir sessão"
569 581  
570   -#: ui/windows.ui.xml:56 ui/linux.ui.xml:56
  582 +#: ui/windows.ui.xml:56 ui/macos.ui.xml:56 ui/linux.ui.xml:56
571 583 msgid "Open in New Tab"
572 584 msgstr "Abrir em nova aba"
573 585  
574   -#: ui/windows.ui.xml:51 ui/linux.ui.xml:51
  586 +#: ui/windows.ui.xml:51 ui/macos.ui.xml:51 ui/linux.ui.xml:51
575 587 msgid "Open in New Window"
576 588 msgstr "Abrir em nova janela"
577 589  
... ... @@ -600,8 +612,9 @@ msgid &quot;Open session on the active terminal&quot;
600 612 msgstr "Abrir sessão no terminal ativo"
601 613  
602 614 #: ui/windows.ui.xml:447 ui/windows.ui.xml:755 ui/windows.ui.xml:897
603   -#: ui/windows.ui.xml:1042 ui/linux.ui.xml:447 ui/linux.ui.xml:755
604   -#: ui/linux.ui.xml:897 ui/linux.ui.xml:1042
  615 +#: ui/windows.ui.xml:1042 ui/macos.ui.xml:447 ui/macos.ui.xml:755
  616 +#: ui/macos.ui.xml:897 ui/macos.ui.xml:1042 ui/linux.ui.xml:447
  617 +#: ui/linux.ui.xml:755 ui/linux.ui.xml:897 ui/linux.ui.xml:1042
605 618 msgid "Options"
606 619 msgstr "Opções"
607 620  
... ... @@ -609,23 +622,23 @@ msgstr &quot;Opções&quot;
609 622 msgid "Parameter Type"
610 623 msgstr "Tipo de parâmetro"
611 624  
612   -#: ui/windows.ui.xml:262 ui/windows.ui.xml:829 ui/linux.ui.xml:262
613   -#: ui/linux.ui.xml:829
  625 +#: ui/windows.ui.xml:262 ui/windows.ui.xml:829 ui/macos.ui.xml:262
  626 +#: ui/macos.ui.xml:829 ui/linux.ui.xml:262 ui/linux.ui.xml:829
614 627 msgid "Paste from clipboard"
615 628 msgstr "Colar da área de transferência"
616 629  
617   -#: ui/windows.ui.xml:272 ui/windows.ui.xml:839 ui/linux.ui.xml:272
618   -#: ui/linux.ui.xml:839
  630 +#: ui/windows.ui.xml:272 ui/windows.ui.xml:839 ui/macos.ui.xml:272
  631 +#: ui/macos.ui.xml:839 ui/linux.ui.xml:272 ui/linux.ui.xml:839
619 632 msgid "Paste from text file"
620 633 msgstr "Colar de um arquivo texto"
621 634  
622   -#: ui/windows.ui.xml:267 ui/windows.ui.xml:834 ui/linux.ui.xml:267
623   -#: ui/linux.ui.xml:834
  635 +#: ui/windows.ui.xml:267 ui/windows.ui.xml:834 ui/macos.ui.xml:267
  636 +#: ui/macos.ui.xml:834 ui/linux.ui.xml:267 ui/linux.ui.xml:834
624 637 msgid "Paste next"
625 638 msgstr "Colar próximo"
626 639  
627   -#: ui/windows.ui.xml:485 ui/windows.ui.xml:941 ui/linux.ui.xml:485
628   -#: ui/linux.ui.xml:941
  640 +#: ui/windows.ui.xml:485 ui/windows.ui.xml:941 ui/macos.ui.xml:485
  641 +#: ui/macos.ui.xml:941 ui/linux.ui.xml:485 ui/linux.ui.xml:941
629 642 msgid "Paste with left margin"
630 643 msgstr "Colar com margem esquerda"
631 644  
... ... @@ -638,20 +651,20 @@ msgstr &quot;Caminho para o novo atalho&quot;
638 651 msgid "Position"
639 652 msgstr "Posição"
640 653  
641   -#: ui/windows.ui.xml:662 ui/linux.ui.xml:662
  654 +#: ui/windows.ui.xml:662 ui/macos.ui.xml:662 ui/linux.ui.xml:662
642 655 msgid "Preferences"
643 656 msgstr "Preferências"
644 657  
645   -#: ui/windows.ui.xml:174 ui/windows.ui.xml:641 ui/linux.ui.xml:174
646   -#: ui/linux.ui.xml:641
  658 +#: ui/windows.ui.xml:174 ui/windows.ui.xml:641 ui/macos.ui.xml:174
  659 +#: ui/macos.ui.xml:641 ui/linux.ui.xml:174 ui/linux.ui.xml:641
647 660 msgid "Print"
648 661 msgstr "Imprimir"
649 662  
650   -#: ui/windows.ui.xml:992 ui/linux.ui.xml:992
  663 +#: ui/windows.ui.xml:992 ui/macos.ui.xml:992 ui/linux.ui.xml:992
651 664 msgid "Print screen"
652 665 msgstr "Imrpimir o conteúdo da tela"
653 666  
654   -#: ui/windows.ui.xml:795 ui/linux.ui.xml:795
  667 +#: ui/windows.ui.xml:795 ui/macos.ui.xml:795 ui/linux.ui.xml:795
655 668 msgid "Print selected"
656 669 msgstr "Imprimir seleção"
657 670  
... ... @@ -661,7 +674,7 @@ msgid &quot;Property \&quot;%s\&quot; is invalid for this object&quot;
661 674 msgstr "Propriedade \"%s\" é inválida para este objeto"
662 675  
663 676 #: src/objects/application/actions/window.c:64 ui/windows.ui.xml:89
664   -#: ui/linux.ui.xml:89
  677 +#: ui/macos.ui.xml:89 ui/linux.ui.xml:89
665 678 msgid "Quit"
666 679 msgstr "Sair"
667 680  
... ... @@ -669,13 +682,13 @@ msgstr &quot;Sair&quot;
669 682 msgid "Rename Session"
670 683 msgstr "Renomear sessão"
671 684  
672   -#: ui/windows.ui.xml:296 ui/windows.ui.xml:858 ui/linux.ui.xml:296
673   -#: ui/linux.ui.xml:858
  685 +#: ui/windows.ui.xml:296 ui/windows.ui.xml:858 ui/macos.ui.xml:296
  686 +#: ui/macos.ui.xml:858 ui/linux.ui.xml:296 ui/linux.ui.xml:858
674 687 msgid "Reselect"
675 688 msgstr "Reselecionar"
676 689  
677   -#: ui/windows.ui.xml:480 ui/windows.ui.xml:912 ui/linux.ui.xml:480
678   -#: ui/linux.ui.xml:912
  690 +#: ui/windows.ui.xml:480 ui/windows.ui.xml:912 ui/macos.ui.xml:480
  691 +#: ui/macos.ui.xml:912 ui/linux.ui.xml:480 ui/linux.ui.xml:912
679 692 msgid "Resize on alternate screen"
680 693 msgstr "Mudar tamanho do terminal em tela alternativa"
681 694  
... ... @@ -683,8 +696,8 @@ msgstr &quot;Mudar tamanho do terminal em tela alternativa&quot;
683 696 msgid "Right"
684 697 msgstr "Direita"
685 698  
686   -#: ui/windows.ui.xml:135 ui/windows.ui.xml:602 ui/linux.ui.xml:135
687   -#: ui/linux.ui.xml:602
  699 +#: ui/windows.ui.xml:135 ui/windows.ui.xml:602 ui/macos.ui.xml:135
  700 +#: ui/macos.ui.xml:602 ui/linux.ui.xml:135 ui/linux.ui.xml:602
688 701 msgid "Save"
689 702 msgstr "Salvar"
690 703  
... ... @@ -692,11 +705,11 @@ msgstr &quot;Salvar&quot;
692 705 msgid "Save current session preferences to file"
693 706 msgstr "Salvar preferências da sessão para arquivo"
694 707  
695   -#: ui/windows.ui.xml:987 ui/linux.ui.xml:987
  708 +#: ui/windows.ui.xml:987 ui/macos.ui.xml:987 ui/linux.ui.xml:987
696 709 msgid "Save screen"
697 710 msgstr "Salvar tela"
698 711  
699   -#: ui/windows.ui.xml:790 ui/linux.ui.xml:790
  712 +#: ui/windows.ui.xml:790 ui/macos.ui.xml:790 ui/linux.ui.xml:790
700 713 msgid "Save selected"
701 714 msgstr "Salvar seleção"
702 715  
... ... @@ -706,14 +719,15 @@ msgstr &quot;Salvar preferências da sessão&quot;
706 719  
707 720 #: src/objects/os/linux/savedesktopicon.c:113
708 721 #: src/objects/os/windows/savedesktopicon.c:106
  722 +#: src/objects/os/macos/savedesktopicon.c:53
709 723 msgid "Save session shortcut"
710 724 msgstr "Salvar atalho para a sessão"
711 725  
712   -#: src/objects/os/linux/savedesktopicon.c:264
  726 +#: src/objects/os/linux/savedesktopicon.c:230
713 727 msgid "Save to session filename"
714 728 msgstr "Salvar para arquivo de sessão"
715 729  
716   -#: src/objects/os/linux/savedesktopicon.c:236
  730 +#: src/objects/os/linux/savedesktopicon.c:202
717 731 msgid "Save to shortcut file"
718 732 msgstr "Salvar para arquivo de atalho"
719 733  
... ... @@ -721,23 +735,23 @@ msgstr &quot;Salvar para arquivo de atalho&quot;
721 735 msgid "Save to windows shortcut"
722 736 msgstr "Salvar para atalho windows"
723 737  
724   -#: ui/windows.ui.xml:416 ui/windows.ui.xml:1056 ui/linux.ui.xml:416
725   -#: ui/linux.ui.xml:1056
  738 +#: ui/windows.ui.xml:416 ui/windows.ui.xml:1056 ui/macos.ui.xml:416
  739 +#: ui/macos.ui.xml:1056 ui/linux.ui.xml:416 ui/linux.ui.xml:1056
726 740 msgid "Screen size"
727 741 msgstr "Tamanho da tela"
728 742  
729   -#: ui/windows.ui.xml:286 ui/windows.ui.xml:853 ui/linux.ui.xml:286
730   -#: ui/linux.ui.xml:853
  743 +#: ui/windows.ui.xml:286 ui/windows.ui.xml:853 ui/macos.ui.xml:286
  744 +#: ui/macos.ui.xml:853 ui/linux.ui.xml:286 ui/linux.ui.xml:853
731 745 msgid "Select Field"
732 746 msgstr "Selecionar campo"
733 747  
734   -#: ui/windows.ui.xml:281 ui/windows.ui.xml:848 ui/linux.ui.xml:281
735   -#: ui/linux.ui.xml:848
  748 +#: ui/windows.ui.xml:281 ui/windows.ui.xml:848 ui/macos.ui.xml:281
  749 +#: ui/macos.ui.xml:848 ui/linux.ui.xml:281 ui/linux.ui.xml:848
736 750 msgid "Select all"
737 751 msgstr "Selecionar tudo"
738 752  
739   -#: ui/windows.ui.xml:495 ui/windows.ui.xml:760 ui/linux.ui.xml:495
740   -#: ui/linux.ui.xml:760
  753 +#: ui/windows.ui.xml:495 ui/windows.ui.xml:760 ui/macos.ui.xml:495
  754 +#: ui/macos.ui.xml:760 ui/linux.ui.xml:495 ui/linux.ui.xml:760
741 755 msgid "Select by rectangles"
742 756 msgstr "Seleção retangular"
743 757  
... ... @@ -750,8 +764,9 @@ msgid &quot;Selected&quot;
750 764 msgstr "Selecionado"
751 765  
752 766 #: ui/windows.ui.xml:145 ui/windows.ui.xml:182 ui/windows.ui.xml:612
753   -#: ui/windows.ui.xml:649 ui/linux.ui.xml:145 ui/linux.ui.xml:182
754   -#: ui/linux.ui.xml:612 ui/linux.ui.xml:649
  767 +#: ui/windows.ui.xml:649 ui/macos.ui.xml:145 ui/macos.ui.xml:182
  768 +#: ui/macos.ui.xml:612 ui/macos.ui.xml:649 ui/linux.ui.xml:145
  769 +#: ui/linux.ui.xml:182 ui/linux.ui.xml:612 ui/linux.ui.xml:649
755 770 msgid "Selected area"
756 771 msgstr "Área selecionada"
757 772  
... ... @@ -760,7 +775,8 @@ msgid &quot;Send/Receive&quot;
760 775 msgstr "Enviar/Receber"
761 776  
762 777 #: src/objects/window/actions/filetransfer.c:46 ui/windows.ui.xml:196
763   -#: ui/windows.ui.xml:997 ui/linux.ui.xml:196 ui/linux.ui.xml:997
  778 +#: ui/windows.ui.xml:997 ui/macos.ui.xml:196 ui/macos.ui.xml:997
  779 +#: ui/linux.ui.xml:196 ui/linux.ui.xml:997
764 780 msgid "Send/Receive files"
765 781 msgstr "Enviar/Receber arquivos"
766 782  
... ... @@ -768,12 +784,13 @@ msgstr &quot;Enviar/Receber arquivos&quot;
768 784 msgid "Separator"
769 785 msgstr "Separador"
770 786  
771   -#: ui/windows.ui.xml:48 ui/windows.ui.xml:584 ui/linux.ui.xml:48
772   -#: ui/linux.ui.xml:584
  787 +#: ui/windows.ui.xml:48 ui/windows.ui.xml:584 ui/macos.ui.xml:48
  788 +#: ui/macos.ui.xml:584 ui/linux.ui.xml:48 ui/linux.ui.xml:584
773 789 msgid "Session"
774 790 msgstr "Sessão"
775 791  
776 792 #: ui/windows.ui.xml:77 ui/windows.ui.xml:978 ui/windows.ui.xml:1098
  793 +#: ui/macos.ui.xml:77 ui/macos.ui.xml:978 ui/macos.ui.xml:1098
777 794 #: ui/linux.ui.xml:77 ui/linux.ui.xml:978 ui/linux.ui.xml:1098
778 795 msgid "Session Trace"
779 796 msgstr "Trace da sessão"
... ... @@ -783,13 +800,13 @@ msgstr &quot;Trace da sessão&quot;
783 800 msgid "Session file"
784 801 msgstr "Arquivo de sessão"
785 802  
786   -#: ui/windows.ui.xml:127 ui/windows.ui.xml:594 ui/linux.ui.xml:127
787   -#: ui/linux.ui.xml:594
  803 +#: ui/windows.ui.xml:127 ui/windows.ui.xml:594 ui/macos.ui.xml:127
  804 +#: ui/macos.ui.xml:594 ui/linux.ui.xml:127 ui/linux.ui.xml:594
788 805 msgid "Session in New Tab"
789 806 msgstr "Sessão em nova aba"
790 807  
791   -#: ui/windows.ui.xml:122 ui/windows.ui.xml:589 ui/linux.ui.xml:122
792   -#: ui/linux.ui.xml:589
  808 +#: ui/windows.ui.xml:122 ui/windows.ui.xml:589 ui/macos.ui.xml:122
  809 +#: ui/macos.ui.xml:589 ui/linux.ui.xml:122 ui/linux.ui.xml:589
793 810 msgid "Session in new window"
794 811 msgstr "Sessão em nova janela"
795 812  
... ... @@ -799,20 +816,21 @@ msgid &quot;Session name&quot;
799 816 msgstr "Nome da sessão"
800 817  
801 818 #: src/objects/window/actions/sessionproperties.c:36 ui/windows.ui.xml:164
802   -#: ui/windows.ui.xml:631 ui/windows.ui.xml:1112 ui/linux.ui.xml:164
  819 +#: ui/windows.ui.xml:631 ui/windows.ui.xml:1112 ui/macos.ui.xml:164
  820 +#: ui/macos.ui.xml:631 ui/macos.ui.xml:1112 ui/linux.ui.xml:164
803 821 #: ui/linux.ui.xml:631 ui/linux.ui.xml:1112
804 822 msgid "Session preferences"
805 823 msgstr "Preferências da sessão"
806 824  
807   -#: src/objects/application/application.c:258
  825 +#: src/objects/application/application.c:246
808 826 msgid "Set default log file name"
809 827 msgstr "Define o nome do arquivo de log padrão"
810 828  
811   -#: src/objects/application/application.c:249
  829 +#: src/objects/application/application.c:236
812 830 msgid "Set the user-interface type"
813 831 msgstr "Define o tipo de interface do usuário"
814 832  
815   -#: ui/windows.ui.xml:382 ui/linux.ui.xml:382
  833 +#: ui/windows.ui.xml:382 ui/macos.ui.xml:382 ui/linux.ui.xml:382
816 834 msgid "Settings"
817 835 msgstr "Configurações"
818 836  
... ... @@ -833,8 +851,8 @@ msgstr &quot;Configurar barra de ferramentas&quot;
833 851 msgid "Shortcut file"
834 852 msgstr "Arquivo de atalho"
835 853  
836   -#: ui/windows.ui.xml:159 ui/windows.ui.xml:626 ui/linux.ui.xml:159
837   -#: ui/linux.ui.xml:626
  854 +#: ui/windows.ui.xml:159 ui/windows.ui.xml:626 ui/macos.ui.xml:159
  855 +#: ui/macos.ui.xml:626 ui/linux.ui.xml:159 ui/linux.ui.xml:626
838 856 msgid "Shortcut for this session"
839 857 msgstr "Atalho para essa sessão"
840 858  
... ... @@ -842,15 +860,15 @@ msgstr &quot;Atalho para essa sessão&quot;
842 860 msgid "Shortcut name"
843 861 msgstr "Nome do atalho"
844 862  
845   -#: ui/windows.ui.xml:510 ui/linux.ui.xml:510
  863 +#: ui/windows.ui.xml:510 ui/macos.ui.xml:510 ui/linux.ui.xml:510
846 864 msgid "Show Underline"
847 865 msgstr "Mostrar sublinhado"
848 866  
849   -#: ui/windows.ui.xml:774 ui/linux.ui.xml:774
  867 +#: ui/windows.ui.xml:774 ui/macos.ui.xml:774 ui/linux.ui.xml:774
850 868 msgid "Show menu"
851 869 msgstr "Mostrar menu"
852 870  
853   -#: ui/windows.ui.xml:769 ui/linux.ui.xml:769
  871 +#: ui/windows.ui.xml:769 ui/macos.ui.xml:769 ui/linux.ui.xml:769
854 872 msgid "Show toolbar"
855 873 msgstr "Mostrar barra de ferramentas"
856 874  
... ... @@ -858,12 +876,12 @@ msgstr &quot;Mostrar barra de ferramentas&quot;
858 876 msgid "Small"
859 877 msgstr "Pequeno"
860 878  
861   -#: ui/windows.ui.xml:520 ui/windows.ui.xml:936 ui/linux.ui.xml:520
862   -#: ui/linux.ui.xml:936
  879 +#: ui/windows.ui.xml:520 ui/windows.ui.xml:936 ui/macos.ui.xml:520
  880 +#: ui/macos.ui.xml:936 ui/linux.ui.xml:520 ui/linux.ui.xml:936
863 881 msgid "Smart paste"
864 882 msgstr "Colar inteligente"
865 883  
866   -#: src/objects/os/linux/savedesktopicon.c:239
  884 +#: src/objects/os/linux/savedesktopicon.c:205
867 885 msgid "Standard desktop files"
868 886 msgstr "Arquivo de atalho padrão"
869 887  
... ... @@ -904,16 +922,16 @@ msgstr &quot;Arquivos de sessão TN3270&quot;
904 922 msgid "TN3270 Session description"
905 923 msgstr "Descrição de sessão TN3270"
906 924  
907   -#: ui/windows.ui.xml:111 ui/windows.ui.xml:573 ui/linux.ui.xml:111
908   -#: ui/linux.ui.xml:573
  925 +#: ui/windows.ui.xml:111 ui/windows.ui.xml:573 ui/macos.ui.xml:111
  926 +#: ui/macos.ui.xml:573 ui/linux.ui.xml:111 ui/linux.ui.xml:573
909 927 msgid "Tab with default session"
910 928 msgstr "Aba com a sessão padrão"
911 929  
912   -#: ui/windows.ui.xml:405 ui/linux.ui.xml:405
  930 +#: ui/windows.ui.xml:405 ui/macos.ui.xml:405 ui/linux.ui.xml:405
913 931 msgid "Terminal colors"
914 932 msgstr "Cores do terminal"
915 933  
916   -#: ui/windows.ui.xml:442 ui/linux.ui.xml:442
  934 +#: ui/windows.ui.xml:442 ui/macos.ui.xml:442 ui/linux.ui.xml:442
917 935 msgid "Terminal font"
918 936 msgstr "Fonte do terminal"
919 937  
... ... @@ -933,7 +951,7 @@ msgstr &quot;A etiqueta da ação&quot;
933 951 msgid "The action tooltip"
934 952 msgstr "A dica da ação"
935 953  
936   -#: src/objects/application/application.c:165
  954 +#: src/objects/application/application.c:150
937 955 msgid "The code of the User interface type"
938 956 msgstr "Código identificando o tipo de interface do usuário"
939 957  
... ... @@ -946,7 +964,7 @@ msgstr &quot;O arquivo com as preferências da sessão atual&quot;
946 964 msgid "The file with the session preferences for this shortcut"
947 965 msgstr "O arquivo com as preferências da sessão para esse atalho"
948 966  
949   -#: src/objects/application/application.c:180
  967 +#: src/objects/application/application.c:165
950 968 msgid "The full path of the default log file"
951 969 msgstr "Caminho completo do arquivo default"
952 970  
... ... @@ -1021,6 +1039,10 @@ msgstr &quot;The type of GVariant passed to activate()&quot;
1021 1039 msgid "The type of the state kept by the action"
1022 1040 msgstr "O tipo do estado mantido pela ação"
1023 1041  
  1042 +#: src/objects/os/macos/savedesktopicon.c:68
  1043 +msgid "This action is not available in this platform"
  1044 +msgstr ""
  1045 +
1024 1046 #: src/objects/window/header-settings.c:84
1025 1047 msgid "Title bar"
1026 1048 msgstr "Barra de título"
... ... @@ -1030,7 +1052,8 @@ msgid &quot;Title bar actions&quot;
1030 1052 msgstr "Ações da barra de título"
1031 1053  
1032 1054 #: src/objects/toolbar/settings.c:94 ui/windows.ui.xml:343
1033   -#: ui/windows.ui.xml:968 ui/windows.ui.xml:1088 ui/linux.ui.xml:343
  1055 +#: ui/windows.ui.xml:968 ui/windows.ui.xml:1088 ui/macos.ui.xml:343
  1056 +#: ui/macos.ui.xml:968 ui/macos.ui.xml:1088 ui/linux.ui.xml:343
1034 1057 #: ui/linux.ui.xml:968 ui/linux.ui.xml:1088
1035 1058 msgid "Toolbar"
1036 1059 msgstr "Barra de ferramentas"
... ... @@ -1051,20 +1074,20 @@ msgstr &quot;Est_ilo da barra de ferramentas&quot;
1051 1074 msgid "Top (system default)"
1052 1075 msgstr "Em cima (padrão do sistema)"
1053 1076  
1054   -#: ui/windows.ui.xml:973 ui/linux.ui.xml:973
  1077 +#: ui/windows.ui.xml:973 ui/macos.ui.xml:973 ui/linux.ui.xml:973
1055 1078 msgid "Top menu"
1056 1079 msgstr "Menu principal"
1057 1080  
1058   -#: ui/windows.ui.xml:338 ui/linux.ui.xml:338
  1081 +#: ui/windows.ui.xml:338 ui/macos.ui.xml:338 ui/linux.ui.xml:338
1059 1082 msgid "Trace"
1060 1083 msgstr "Trace"
1061 1084  
1062   -#: ui/windows.ui.xml:465 ui/windows.ui.xml:1027 ui/linux.ui.xml:465
1063   -#: ui/linux.ui.xml:1027
  1085 +#: ui/windows.ui.xml:465 ui/windows.ui.xml:1027 ui/macos.ui.xml:465
  1086 +#: ui/macos.ui.xml:1027 ui/linux.ui.xml:465 ui/linux.ui.xml:1027
1064 1087 msgid "Track Cursor"
1065 1088 msgstr "Mostrar posição do cursor"
1066 1089  
1067   -#: src/objects/application/application.c:164
  1090 +#: src/objects/application/application.c:149
1068 1091 msgid "UI Type"
1069 1092 msgstr "Interface de usuário"
1070 1093  
... ... @@ -1081,38 +1104,39 @@ msgstr &quot;&quot;
1081 1104 msgid "Unable to load session preferences from '%s'"
1082 1105 msgstr "Incapaz de ler preferências de sessa de '%s'"
1083 1106  
1084   -#: ui/windows.ui.xml:291 ui/windows.ui.xml:800 ui/linux.ui.xml:291
1085   -#: ui/linux.ui.xml:800
  1107 +#: ui/windows.ui.xml:291 ui/windows.ui.xml:800 ui/macos.ui.xml:291
  1108 +#: ui/macos.ui.xml:800 ui/linux.ui.xml:291 ui/linux.ui.xml:800
1086 1109 msgid "Unselect"
1087 1110 msgstr "Remover seleção"
1088 1111  
1089   -#: src/objects/application/actions/about.c:90
  1112 +#: src/objects/application/actions/about.c:113
1090 1113 #, c-format
1091 1114 msgid "Unstable version %s-%s"
1092 1115 msgstr "Versão instável %s-%s"
1093 1116  
1094   -#: ui/windows.ui.xml:530 ui/windows.ui.xml:907 ui/linux.ui.xml:530
1095   -#: ui/linux.ui.xml:907
  1117 +#: ui/windows.ui.xml:530 ui/windows.ui.xml:907 ui/macos.ui.xml:530
  1118 +#: ui/macos.ui.xml:907 ui/linux.ui.xml:530 ui/linux.ui.xml:907
1096 1119 msgid "Use +/- for field navigation"
1097 1120 msgstr "Usar teclas +/- para navegar por campos"
1098 1121  
1099   -#: src/objects/application/actions/about.c:92
  1122 +#: src/objects/application/actions/about.c:115
1100 1123 #, c-format
1101 1124 msgid "Version %s-%s"
1102 1125 msgstr "Versão %s-%s"
1103 1126  
1104 1127 #: src/objects/window/header.c:63 ui/windows.ui.xml:64 ui/windows.ui.xml:965
1105   -#: ui/windows.ui.xml:1085 ui/linux.ui.xml:64 ui/linux.ui.xml:965
  1128 +#: ui/windows.ui.xml:1085 ui/macos.ui.xml:64 ui/macos.ui.xml:965
  1129 +#: ui/macos.ui.xml:1085 ui/linux.ui.xml:64 ui/linux.ui.xml:965
1106 1130 #: ui/linux.ui.xml:1085
1107 1131 msgid "View"
1108 1132 msgstr "Exibir"
1109 1133  
1110   -#: src/objects/application/actions/about.c:183
  1134 +#: src/objects/application/actions/about.c:206
1111 1135 msgid "View this project on github"
1112 1136 msgstr "Portal do Software Público Brasileiro"
1113 1137  
1114   -#: ui/windows.ui.xml:106 ui/windows.ui.xml:568 ui/linux.ui.xml:106
1115   -#: ui/linux.ui.xml:568
  1138 +#: ui/windows.ui.xml:106 ui/windows.ui.xml:568 ui/macos.ui.xml:106
  1139 +#: ui/macos.ui.xml:568 ui/linux.ui.xml:106 ui/linux.ui.xml:568
1116 1140 msgid "Window with default session"
1117 1141 msgstr "Janela com sessão padrão"
1118 1142  
... ... @@ -1125,7 +1149,7 @@ msgid &quot;_Apply&quot;
1125 1149 msgstr "_Aplicar"
1126 1150  
1127 1151 #: src/objects/actions/save.c:102 src/objects/settings/dialog.c:78
1128   -#: src/objects/os/linux/savedesktopicon.c:174
  1152 +#: src/objects/os/linux/savedesktopicon.c:140
1129 1153 #: src/objects/os/windows/savedesktopicon.c:132
1130 1154 msgid "_Cancel"
1131 1155 msgstr "_Cancelar"
... ... @@ -1134,35 +1158,36 @@ msgstr &quot;_Cancelar&quot;
1134 1158 msgid "_Close session"
1135 1159 msgstr "_Fechar sessão"
1136 1160  
1137   -#: ui/windows.ui.xml:369 ui/windows.ui.xml:1107 ui/linux.ui.xml:369
1138   -#: ui/linux.ui.xml:1107
  1161 +#: ui/windows.ui.xml:369 ui/windows.ui.xml:1107 ui/macos.ui.xml:369
  1162 +#: ui/macos.ui.xml:1107 ui/linux.ui.xml:369 ui/linux.ui.xml:1107
1139 1163 msgid "_Connect"
1140 1164 msgstr "_Conectar"
1141 1165  
1142   -#: ui/windows.ui.xml:374 ui/linux.ui.xml:374
  1166 +#: ui/windows.ui.xml:374 ui/macos.ui.xml:374 ui/linux.ui.xml:374
1143 1167 msgid "_Disconnect"
1144 1168 msgstr "_Desconectar"
1145 1169  
1146 1170 #: ui/windows.ui.xml:232 ui/windows.ui.xml:681 ui/windows.ui.xml:824
  1171 +#: ui/macos.ui.xml:232 ui/macos.ui.xml:681 ui/macos.ui.xml:824
1147 1172 #: ui/linux.ui.xml:232 ui/linux.ui.xml:681 ui/linux.ui.xml:824
1148 1173 msgid "_Edit"
1149 1174 msgstr "_Editar"
1150 1175  
1151   -#: ui/windows.ui.xml:99 ui/linux.ui.xml:99
  1176 +#: ui/windows.ui.xml:99 ui/macos.ui.xml:99 ui/linux.ui.xml:99
1152 1177 msgid "_File"
1153 1178 msgstr "_Arquivo"
1154 1179  
1155   -#: ui/windows.ui.xml:361 ui/linux.ui.xml:361
  1180 +#: ui/windows.ui.xml:361 ui/macos.ui.xml:361 ui/linux.ui.xml:361
1156 1181 msgid "_Network"
1157 1182 msgstr "_Rede"
1158 1183  
1159   -#: ui/windows.ui.xml:103 ui/windows.ui.xml:565 ui/linux.ui.xml:103
1160   -#: ui/linux.ui.xml:565
  1184 +#: ui/windows.ui.xml:103 ui/windows.ui.xml:565 ui/macos.ui.xml:103
  1185 +#: ui/macos.ui.xml:565 ui/linux.ui.xml:103 ui/linux.ui.xml:565
1161 1186 msgid "_New"
1162 1187 msgstr "_Nova"
1163 1188  
1164   -#: ui/windows.ui.xml:119 ui/windows.ui.xml:581 ui/linux.ui.xml:119
1165   -#: ui/linux.ui.xml:581
  1189 +#: ui/windows.ui.xml:119 ui/windows.ui.xml:581 ui/macos.ui.xml:119
  1190 +#: ui/macos.ui.xml:581 ui/linux.ui.xml:119 ui/linux.ui.xml:581
1166 1191 msgid "_Open"
1167 1192 msgstr "_Abrir"
1168 1193  
... ... @@ -1174,20 +1199,20 @@ msgstr &quot;_Preferências&quot;
1174 1199 msgid "_Rename session"
1175 1200 msgstr "Renomear sessão"
1176 1201  
1177   -#: src/objects/actions/save.c:103 src/objects/os/linux/savedesktopicon.c:175
  1202 +#: src/objects/actions/save.c:103 src/objects/os/linux/savedesktopicon.c:141
1178 1203 #: src/objects/os/windows/savedesktopicon.c:133
1179 1204 msgid "_Save"
1180 1205 msgstr "_Salvar"
1181 1206  
1182   -#: ui/windows.ui.xml:335 ui/linux.ui.xml:335
  1207 +#: ui/windows.ui.xml:335 ui/macos.ui.xml:335 ui/linux.ui.xml:335
1183 1208 msgid "_View"
1184 1209 msgstr "_Exibir"
1185 1210  
1186   -#: src/objects/application/actions/about.c:182
  1211 +#: src/objects/application/actions/about.c:205
1187 1212 msgid "https://github.com/PerryWerneck/pw3270"
1188 1213 msgstr "https://portal.softwarepublico.gov.br/social/pw3270/"
1189 1214  
1190   -#: src/objects/application/actions/about.c:185
  1215 +#: src/objects/application/actions/about.c:208
1191 1216 msgid "translator-credits"
1192 1217 msgstr "translator-credits"
1193 1218  
... ...
locale/pw3270.pot
... ... @@ -6,373 +6,9 @@
6 6 #, fuzzy
7 7 msgid ""
8 8 msgstr ""
9   -"#-#-#-#-# view.pot (PACKAGE VERSION) #-#-#-#-#\n"
10 9 "Project-Id-Version: PACKAGE VERSION\n"
11 10 "Report-Msgid-Bugs-To: \n"
12   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
13   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
15   -"Language-Team: LANGUAGE <LL@li.org>\n"
16   -"Language: \n"
17   -"MIME-Version: 1.0\n"
18   -"Content-Type: text/plain; charset=UTF-8\n"
19   -"Content-Transfer-Encoding: 8bit\n"
20   -"#-#-#-#-# save.pot (PACKAGE VERSION) #-#-#-#-#\n"
21   -"Project-Id-Version: PACKAGE VERSION\n"
22   -"Report-Msgid-Bugs-To: \n"
23   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
24   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
25   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
26   -"Language-Team: LANGUAGE <LL@li.org>\n"
27   -"Language: \n"
28   -"MIME-Version: 1.0\n"
29   -"Content-Type: text/plain; charset=UTF-8\n"
30   -"Content-Transfer-Encoding: 8bit\n"
31   -"#-#-#-#-# abstract.pot (PACKAGE VERSION) #-#-#-#-#\n"
32   -"Project-Id-Version: PACKAGE VERSION\n"
33   -"Report-Msgid-Bugs-To: \n"
34   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
35   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
36   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
37   -"Language-Team: LANGUAGE <LL@li.org>\n"
38   -"Language: \n"
39   -"MIME-Version: 1.0\n"
40   -"Content-Type: text/plain; charset=UTF-8\n"
41   -"Content-Transfer-Encoding: 8bit\n"
42   -"#-#-#-#-# application.pot (PACKAGE VERSION) #-#-#-#-#\n"
43   -"Project-Id-Version: PACKAGE VERSION\n"
44   -"Report-Msgid-Bugs-To: \n"
45   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
46   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
47   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
48   -"Language-Team: LANGUAGE <LL@li.org>\n"
49   -"Language: \n"
50   -"MIME-Version: 1.0\n"
51   -"Content-Type: text/plain; charset=UTF-8\n"
52   -"Content-Transfer-Encoding: 8bit\n"
53   -"#-#-#-#-# window.pot (PACKAGE VERSION) #-#-#-#-#\n"
54   -"Project-Id-Version: PACKAGE VERSION\n"
55   -"Report-Msgid-Bugs-To: \n"
56   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
57   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
58   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
59   -"Language-Team: LANGUAGE <LL@li.org>\n"
60   -"Language: \n"
61   -"MIME-Version: 1.0\n"
62   -"Content-Type: text/plain; charset=UTF-8\n"
63   -"Content-Transfer-Encoding: 8bit\n"
64   -"#-#-#-#-# preferences.pot (PACKAGE VERSION) #-#-#-#-#\n"
65   -"Project-Id-Version: PACKAGE VERSION\n"
66   -"Report-Msgid-Bugs-To: \n"
67   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
68   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
69   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
70   -"Language-Team: LANGUAGE <LL@li.org>\n"
71   -"Language: \n"
72   -"MIME-Version: 1.0\n"
73   -"Content-Type: text/plain; charset=UTF-8\n"
74   -"Content-Transfer-Encoding: 8bit\n"
75   -"#-#-#-#-# open.pot (PACKAGE VERSION) #-#-#-#-#\n"
76   -"Project-Id-Version: PACKAGE VERSION\n"
77   -"Report-Msgid-Bugs-To: \n"
78   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
79   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
80   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
81   -"Language-Team: LANGUAGE <LL@li.org>\n"
82   -"Language: \n"
83   -"MIME-Version: 1.0\n"
84   -"Content-Type: text/plain; charset=UTF-8\n"
85   -"Content-Transfer-Encoding: 8bit\n"
86   -"#-#-#-#-# about.pot (PACKAGE VERSION) #-#-#-#-#\n"
87   -"Project-Id-Version: PACKAGE VERSION\n"
88   -"Report-Msgid-Bugs-To: \n"
89   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
90   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
91   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
92   -"Language-Team: LANGUAGE <LL@li.org>\n"
93   -"Language: \n"
94   -"MIME-Version: 1.0\n"
95   -"Content-Type: text/plain; charset=UTF-8\n"
96   -"Content-Transfer-Encoding: 8bit\n"
97   -"#-#-#-#-# window.pot (PACKAGE VERSION) #-#-#-#-#\n"
98   -"Project-Id-Version: PACKAGE VERSION\n"
99   -"Report-Msgid-Bugs-To: \n"
100   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
101   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
102   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
103   -"Language-Team: LANGUAGE <LL@li.org>\n"
104   -"Language: \n"
105   -"MIME-Version: 1.0\n"
106   -"Content-Type: text/plain; charset=UTF-8\n"
107   -"Content-Transfer-Encoding: 8bit\n"
108   -"#-#-#-#-# terminal.pot (PACKAGE VERSION) #-#-#-#-#\n"
109   -"Project-Id-Version: PACKAGE VERSION\n"
110   -"Report-Msgid-Bugs-To: \n"
111   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
112   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
113   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
114   -"Language-Team: LANGUAGE <LL@li.org>\n"
115   -"Language: \n"
116   -"MIME-Version: 1.0\n"
117   -"Content-Type: text/plain; charset=UTF-8\n"
118   -"Content-Transfer-Encoding: 8bit\n"
119   -"#-#-#-#-# page.pot (PACKAGE VERSION) #-#-#-#-#\n"
120   -"Project-Id-Version: PACKAGE VERSION\n"
121   -"Report-Msgid-Bugs-To: \n"
122   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
123   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
124   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
125   -"Language-Team: LANGUAGE <LL@li.org>\n"
126   -"Language: \n"
127   -"MIME-Version: 1.0\n"
128   -"Content-Type: text/plain; charset=UTF-8\n"
129   -"Content-Transfer-Encoding: 8bit\n"
130   -"#-#-#-#-# keyfile.pot (PACKAGE VERSION) #-#-#-#-#\n"
131   -"Project-Id-Version: PACKAGE VERSION\n"
132   -"Report-Msgid-Bugs-To: \n"
133   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
134   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
135   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
136   -"Language-Team: LANGUAGE <LL@li.org>\n"
137   -"Language: \n"
138   -"MIME-Version: 1.0\n"
139   -"Content-Type: text/plain; charset=UTF-8\n"
140   -"Content-Transfer-Encoding: 8bit\n"
141   -"#-#-#-#-# header-settings.pot (PACKAGE VERSION) #-#-#-#-#\n"
142   -"Project-Id-Version: PACKAGE VERSION\n"
143   -"Report-Msgid-Bugs-To: \n"
144   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
145   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
146   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
147   -"Language-Team: LANGUAGE <LL@li.org>\n"
148   -"Language: \n"
149   -"MIME-Version: 1.0\n"
150   -"Content-Type: text/plain; charset=UTF-8\n"
151   -"Content-Transfer-Encoding: 8bit\n"
152   -"#-#-#-#-# header.pot (PACKAGE VERSION) #-#-#-#-#\n"
153   -"Project-Id-Version: PACKAGE VERSION\n"
154   -"Report-Msgid-Bugs-To: \n"
155   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
156   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
157   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
158   -"Language-Team: LANGUAGE <LL@li.org>\n"
159   -"Language: \n"
160   -"MIME-Version: 1.0\n"
161   -"Content-Type: text/plain; charset=UTF-8\n"
162   -"Content-Transfer-Encoding: 8bit\n"
163   -"#-#-#-#-# sessionproperties.pot (PACKAGE VERSION) #-#-#-#-#\n"
164   -"Project-Id-Version: PACKAGE VERSION\n"
165   -"Report-Msgid-Bugs-To: \n"
166   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
167   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
168   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
169   -"Language-Team: LANGUAGE <LL@li.org>\n"
170   -"Language: \n"
171   -"MIME-Version: 1.0\n"
172   -"Content-Type: text/plain; charset=UTF-8\n"
173   -"Content-Transfer-Encoding: 8bit\n"
174   -"#-#-#-#-# filetransfer.pot (PACKAGE VERSION) #-#-#-#-#\n"
175   -"Project-Id-Version: PACKAGE VERSION\n"
176   -"Report-Msgid-Bugs-To: \n"
177   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
178   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
179   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
180   -"Language-Team: LANGUAGE <LL@li.org>\n"
181   -"Language: \n"
182   -"MIME-Version: 1.0\n"
183   -"Content-Type: text/plain; charset=UTF-8\n"
184   -"Content-Transfer-Encoding: 8bit\n"
185   -"#-#-#-#-# connect.pot (PACKAGE VERSION) #-#-#-#-#\n"
186   -"Project-Id-Version: PACKAGE VERSION\n"
187   -"Report-Msgid-Bugs-To: \n"
188   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
189   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
190   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
191   -"Language-Team: LANGUAGE <LL@li.org>\n"
192   -"Language: \n"
193   -"MIME-Version: 1.0\n"
194   -"Content-Type: text/plain; charset=UTF-8\n"
195   -"Content-Transfer-Encoding: 8bit\n"
196   -"#-#-#-#-# close.pot (PACKAGE VERSION) #-#-#-#-#\n"
197   -"Project-Id-Version: PACKAGE VERSION\n"
198   -"Report-Msgid-Bugs-To: \n"
199   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
200   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
201   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
202   -"Language-Team: LANGUAGE <LL@li.org>\n"
203   -"Language: \n"
204   -"MIME-Version: 1.0\n"
205   -"Content-Type: text/plain; charset=UTF-8\n"
206   -"Content-Transfer-Encoding: 8bit\n"
207   -"#-#-#-#-# toolbar.pot (PACKAGE VERSION) #-#-#-#-#\n"
208   -"Project-Id-Version: PACKAGE VERSION\n"
209   -"Report-Msgid-Bugs-To: \n"
210   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
211   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
212   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
213   -"Language-Team: LANGUAGE <LL@li.org>\n"
214   -"Language: \n"
215   -"MIME-Version: 1.0\n"
216   -"Content-Type: text/plain; charset=UTF-8\n"
217   -"Content-Transfer-Encoding: 8bit\n"
218   -"#-#-#-#-# settings.pot (PACKAGE VERSION) #-#-#-#-#\n"
219   -"Project-Id-Version: PACKAGE VERSION\n"
220   -"Report-Msgid-Bugs-To: \n"
221   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
222   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
223   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
224   -"Language-Team: LANGUAGE <LL@li.org>\n"
225   -"Language: \n"
226   -"MIME-Version: 1.0\n"
227   -"Content-Type: text/plain; charset=UTF-8\n"
228   -"Content-Transfer-Encoding: 8bit\n"
229   -"#-#-#-#-# models.pot (PACKAGE VERSION) #-#-#-#-#\n"
230   -"Project-Id-Version: PACKAGE VERSION\n"
231   -"Report-Msgid-Bugs-To: \n"
232   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
233   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
234   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
235   -"Language-Team: LANGUAGE <LL@li.org>\n"
236   -"Language: \n"
237   -"MIME-Version: 1.0\n"
238   -"Content-Type: text/plain; charset=UTF-8\n"
239   -"Content-Transfer-Encoding: 8bit\n"
240   -"#-#-#-#-# gsettings.pot (PACKAGE VERSION) #-#-#-#-#\n"
241   -"Project-Id-Version: PACKAGE VERSION\n"
242   -"Report-Msgid-Bugs-To: \n"
243   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
244   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
245   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
246   -"Language-Team: LANGUAGE <LL@li.org>\n"
247   -"Language: \n"
248   -"MIME-Version: 1.0\n"
249   -"Content-Type: text/plain; charset=UTF-8\n"
250   -"Content-Transfer-Encoding: 8bit\n"
251   -"#-#-#-#-# dialog.pot (PACKAGE VERSION) #-#-#-#-#\n"
252   -"Project-Id-Version: PACKAGE VERSION\n"
253   -"Report-Msgid-Bugs-To: \n"
254   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
255   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
256   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
257   -"Language-Team: LANGUAGE <LL@li.org>\n"
258   -"Language: \n"
259   -"MIME-Version: 1.0\n"
260   -"Content-Type: text/plain; charset=UTF-8\n"
261   -"Content-Transfer-Encoding: 8bit\n"
262   -"#-#-#-#-# actionview.pot (PACKAGE VERSION) #-#-#-#-#\n"
263   -"Project-Id-Version: PACKAGE VERSION\n"
264   -"Report-Msgid-Bugs-To: \n"
265   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
266   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
267   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
268   -"Language-Team: LANGUAGE <LL@li.org>\n"
269   -"Language: \n"
270   -"MIME-Version: 1.0\n"
271   -"Content-Type: text/plain; charset=UTF-8\n"
272   -"Content-Transfer-Encoding: 8bit\n"
273   -"#-#-#-#-# tools.pot (PACKAGE VERSION) #-#-#-#-#\n"
274   -"Project-Id-Version: PACKAGE VERSION\n"
275   -"Report-Msgid-Bugs-To: \n"
276   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
277   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
278   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
279   -"Language-Team: LANGUAGE <LL@li.org>\n"
280   -"Language: \n"
281   -"MIME-Version: 1.0\n"
282   -"Content-Type: text/plain; charset=UTF-8\n"
283   -"Content-Transfer-Encoding: 8bit\n"
284   -"#-#-#-#-# builder.pot (PACKAGE VERSION) #-#-#-#-#\n"
285   -"Project-Id-Version: PACKAGE VERSION\n"
286   -"Report-Msgid-Bugs-To: \n"
287   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
288   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
289   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
290   -"Language-Team: LANGUAGE <LL@li.org>\n"
291   -"Language: \n"
292   -"MIME-Version: 1.0\n"
293   -"Content-Type: text/plain; charset=UTF-8\n"
294   -"Content-Transfer-Encoding: 8bit\n"
295   -"#-#-#-#-# model.pot (PACKAGE VERSION) #-#-#-#-#\n"
296   -"Project-Id-Version: PACKAGE VERSION\n"
297   -"Report-Msgid-Bugs-To: \n"
298   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
299   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
300   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
301   -"Language-Team: LANGUAGE <LL@li.org>\n"
302   -"Language: \n"
303   -"MIME-Version: 1.0\n"
304   -"Content-Type: text/plain; charset=UTF-8\n"
305   -"Content-Transfer-Encoding: 8bit\n"
306   -"#-#-#-#-# element.pot (PACKAGE VERSION) #-#-#-#-#\n"
307   -"Project-Id-Version: PACKAGE VERSION\n"
308   -"Report-Msgid-Bugs-To: \n"
309   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
310   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
311   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
312   -"Language-Team: LANGUAGE <LL@li.org>\n"
313   -"Language: \n"
314   -"MIME-Version: 1.0\n"
315   -"Content-Type: text/plain; charset=UTF-8\n"
316   -"Content-Transfer-Encoding: 8bit\n"
317   -"#-#-#-#-# attribute.pot (PACKAGE VERSION) #-#-#-#-#\n"
318   -"Project-Id-Version: PACKAGE VERSION\n"
319   -"Report-Msgid-Bugs-To: \n"
320   -"POT-Creation-Date: 2021-12-23 01:54-0300\n"
321   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
322   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
323   -"Language-Team: LANGUAGE <LL@li.org>\n"
324   -"Language: \n"
325   -"MIME-Version: 1.0\n"
326   -"Content-Type: text/plain; charset=UTF-8\n"
327   -"Content-Transfer-Encoding: 8bit\n"
328   -"#-#-#-#-# savedesktopicon.pot (PACKAGE VERSION) #-#-#-#-#\n"
329   -"Project-Id-Version: PACKAGE VERSION\n"
330   -"Report-Msgid-Bugs-To: \n"
331   -"POT-Creation-Date: 2021-12-23 01:55-0300\n"
332   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
333   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
334   -"Language-Team: LANGUAGE <LL@li.org>\n"
335   -"Language: \n"
336   -"MIME-Version: 1.0\n"
337   -"Content-Type: text/plain; charset=UTF-8\n"
338   -"Content-Transfer-Encoding: 8bit\n"
339   -"#-#-#-#-# savedesktopicon.pot (PACKAGE VERSION) #-#-#-#-#\n"
340   -"Project-Id-Version: PACKAGE VERSION\n"
341   -"Report-Msgid-Bugs-To: \n"
342   -"POT-Creation-Date: 2021-12-23 01:56-0300\n"
343   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
344   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
345   -"Language-Team: LANGUAGE <LL@li.org>\n"
346   -"Language: \n"
347   -"MIME-Version: 1.0\n"
348   -"Content-Type: text/plain; charset=UTF-8\n"
349   -"Content-Transfer-Encoding: 8bit\n"
350   -"#-#-#-#-# open.pot (PACKAGE VERSION) #-#-#-#-#\n"
351   -"Project-Id-Version: PACKAGE VERSION\n"
352   -"Report-Msgid-Bugs-To: \n"
353   -"POT-Creation-Date: 2021-12-23 01:56-0300\n"
354   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
355   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
356   -"Language-Team: LANGUAGE <LL@li.org>\n"
357   -"Language: \n"
358   -"MIME-Version: 1.0\n"
359   -"Content-Type: text/plain; charset=UTF-8\n"
360   -"Content-Transfer-Encoding: 8bit\n"
361   -"#-#-#-#-# windows.ui.pot (PACKAGE VERSION) #-#-#-#-#\n"
362   -"Project-Id-Version: PACKAGE VERSION\n"
363   -"Report-Msgid-Bugs-To: \n"
364   -"POT-Creation-Date: 2021-12-23 01:56-0300\n"
365   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
366   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
367   -"Language-Team: LANGUAGE <LL@li.org>\n"
368   -"Language: \n"
369   -"MIME-Version: 1.0\n"
370   -"Content-Type: text/plain; charset=UTF-8\n"
371   -"Content-Transfer-Encoding: 8bit\n"
372   -"#-#-#-#-# linux.ui.pot (PACKAGE VERSION) #-#-#-#-#\n"
373   -"Project-Id-Version: PACKAGE VERSION\n"
374   -"Report-Msgid-Bugs-To: \n"
375   -"POT-Creation-Date: 2021-12-23 01:56-0300\n"
  11 +"POT-Creation-Date: 2022-05-18 15:30-0300\n"
376 12 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
377 13 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
378 14 "Language-Team: LANGUAGE <LL@li.org>\n"
... ... @@ -381,34 +17,34 @@ msgstr &quot;&quot;
381 17 "Content-Type: text/plain; charset=UTF-8\n"
382 18 "Content-Transfer-Encoding: 8bit\n"
383 19  
384   -#: src/objects/application/application.c:225
  20 +#: src/objects/application/application.c:211
385 21 #, c-format
386 22 msgid "\"%s\" is not a valid user interface name"
387 23 msgstr ""
388 24  
389   -#: src/objects/application/actions/about.c:110
  25 +#: src/objects/application/actions/about.c:133
390 26 #, c-format
391 27 msgid "%s for %s."
392 28 msgstr ""
393 29  
394   -#: src/objects/application/actions/about.c:117
  30 +#: src/objects/application/actions/about.c:140
395 31 msgid "32 bits Linux"
396 32 msgstr ""
397 33  
398   -#: src/objects/application/actions/about.c:115
  34 +#: src/objects/application/actions/about.c:138
399 35 msgid "32 bits Windows"
400 36 msgstr ""
401 37  
402   -#: src/objects/actions/save.c:166 src/objects/os/linux/savedesktopicon.c:267
  38 +#: src/objects/actions/save.c:166 src/objects/os/linux/savedesktopicon.c:233
403 39 #: src/objects/os/windows/savedesktopicon.c:222
404 40 msgid "3270 session files"
405 41 msgstr ""
406 42  
407   -#: src/objects/application/actions/about.c:119
  43 +#: src/objects/application/actions/about.c:142
408 44 msgid "64 bits Linux"
409 45 msgstr ""
410 46  
411   -#: src/objects/application/actions/about.c:113
  47 +#: src/objects/application/actions/about.c:136
412 48 msgid "64 bits Windows"
413 49 msgstr ""
414 50  
... ... @@ -417,8 +53,9 @@ msgid &quot;&quot;
417 53 "<small><b>The toolbar position only takes effect after restart</b></small>"
418 54 msgstr ""
419 55  
420   -#: src/objects/application/actions/about.c:209 ui/windows.ui.xml:40
421   -#: ui/windows.ui.xml:553 ui/linux.ui.xml:40 ui/linux.ui.xml:553
  56 +#: src/objects/application/actions/about.c:232 ui/windows.ui.xml:40
  57 +#: ui/windows.ui.xml:553 ui/macos.ui.xml:40 ui/macos.ui.xml:553
  58 +#: ui/linux.ui.xml:40 ui/linux.ui.xml:553
422 59 msgid "About PW3270"
423 60 msgstr ""
424 61  
... ... @@ -431,6 +68,7 @@ msgid &quot;Action Names&quot;
431 68 msgstr ""
432 69  
433 70 #: ui/windows.ui.xml:525 ui/windows.ui.xml:917 ui/windows.ui.xml:1032
  71 +#: ui/macos.ui.xml:525 ui/macos.ui.xml:917 ui/macos.ui.xml:1032
434 72 #: ui/linux.ui.xml:525 ui/linux.ui.xml:917 ui/linux.ui.xml:1032
435 73 msgid "Alert sound"
436 74 msgstr ""
... ... @@ -439,17 +77,17 @@ msgstr &quot;&quot;
439 77 msgid "All files"
440 78 msgstr ""
441 79  
442   -#: ui/windows.ui.xml:252 ui/windows.ui.xml:691 ui/linux.ui.xml:252
443   -#: ui/linux.ui.xml:691
  80 +#: ui/windows.ui.xml:252 ui/windows.ui.xml:691 ui/macos.ui.xml:252
  81 +#: ui/macos.ui.xml:691 ui/linux.ui.xml:252 ui/linux.ui.xml:691
444 82 msgid "Append to copy"
445 83 msgstr ""
446 84  
447   -#: src/objects/application/actions/about.c:152
  85 +#: src/objects/application/actions/about.c:175
448 86 msgid "Apple version"
449 87 msgstr ""
450 88  
451   -#: ui/windows.ui.xml:385 ui/windows.ui.xml:665 ui/linux.ui.xml:385
452   -#: ui/linux.ui.xml:665
  89 +#: ui/windows.ui.xml:385 ui/windows.ui.xml:665 ui/macos.ui.xml:385
  90 +#: ui/macos.ui.xml:665 ui/linux.ui.xml:385 ui/linux.ui.xml:665
453 91 msgid "Application"
454 92 msgstr ""
455 93  
... ... @@ -458,7 +96,7 @@ msgid &quot;Application menu&quot;
458 96 msgstr ""
459 97  
460 98 #: src/objects/application/actions/preferences.c:76 ui/windows.ui.xml:84
461   -#: ui/linux.ui.xml:84
  99 +#: ui/macos.ui.xml:84 ui/linux.ui.xml:84
462 100 msgid "Application preferences"
463 101 msgstr ""
464 102  
... ... @@ -466,7 +104,7 @@ msgstr &quot;&quot;
466 104 msgid "Apply"
467 105 msgstr ""
468 106  
469   -#: ui/windows.ui.xml:500 ui/linux.ui.xml:500
  107 +#: ui/windows.ui.xml:500 ui/macos.ui.xml:500 ui/linux.ui.xml:500
470 108 msgid "Auto-Reconnect"
471 109 msgstr ""
472 110  
... ... @@ -474,20 +112,20 @@ msgstr &quot;&quot;
474 112 msgid "Available"
475 113 msgstr ""
476 114  
477   -#: src/objects/application/actions/about.c:155
  115 +#: src/objects/application/actions/about.c:178
478 116 msgid "Based on X3270 from"
479 117 msgstr ""
480 118  
481   -#: ui/windows.ui.xml:490 ui/windows.ui.xml:946 ui/linux.ui.xml:490
482   -#: ui/linux.ui.xml:946
  119 +#: ui/windows.ui.xml:490 ui/windows.ui.xml:946 ui/macos.ui.xml:490
  120 +#: ui/macos.ui.xml:946 ui/linux.ui.xml:490 ui/linux.ui.xml:946
483 121 msgid "Blank Fill"
484 122 msgstr ""
485 123  
486   -#: ui/windows.ui.xml:455 ui/linux.ui.xml:455
  124 +#: ui/windows.ui.xml:455 ui/macos.ui.xml:455 ui/linux.ui.xml:455
487 125 msgid "Blinking Cursor"
488 126 msgstr ""
489 127  
490   -#: ui/windows.ui.xml:505 ui/linux.ui.xml:505
  128 +#: ui/windows.ui.xml:505 ui/macos.ui.xml:505 ui/linux.ui.xml:505
491 129 msgid "Bold"
492 130 msgstr ""
493 131  
... ... @@ -534,17 +172,19 @@ msgid &quot;Change the preferences for the active session&quot;
534 172 msgstr ""
535 173  
536 174 #: ui/windows.ui.xml:305 ui/windows.ui.xml:725 ui/windows.ui.xml:867
  175 +#: ui/macos.ui.xml:305 ui/macos.ui.xml:725 ui/macos.ui.xml:867
537 176 #: ui/linux.ui.xml:305 ui/linux.ui.xml:725 ui/linux.ui.xml:867
538 177 msgid "Clear"
539 178 msgstr ""
540 179  
541   -#: ui/windows.ui.xml:400 ui/linux.ui.xml:400
  180 +#: ui/windows.ui.xml:400 ui/macos.ui.xml:400 ui/linux.ui.xml:400
542 181 msgid "Clipboard"
543 182 msgstr ""
544 183  
545 184 #: ui/windows.ui.xml:150 ui/windows.ui.xml:187 ui/windows.ui.xml:617
546   -#: ui/windows.ui.xml:654 ui/linux.ui.xml:150 ui/linux.ui.xml:187
547   -#: ui/linux.ui.xml:617 ui/linux.ui.xml:654
  185 +#: ui/windows.ui.xml:654 ui/macos.ui.xml:150 ui/macos.ui.xml:187
  186 +#: ui/macos.ui.xml:617 ui/macos.ui.xml:654 ui/linux.ui.xml:150
  187 +#: ui/linux.ui.xml:187 ui/linux.ui.xml:617 ui/linux.ui.xml:654
548 188 msgid "Clipboard contents"
549 189 msgstr ""
550 190  
... ... @@ -558,8 +198,9 @@ msgstr &quot;&quot;
558 198  
559 199 #: src/objects/window/actions/close.c:60 ui/windows.ui.xml:217
560 200 #: ui/windows.ui.xml:813 ui/windows.ui.xml:1011 ui/windows.ui.xml:1118
561   -#: ui/linux.ui.xml:217 ui/linux.ui.xml:813 ui/linux.ui.xml:1011
562   -#: ui/linux.ui.xml:1118
  201 +#: ui/macos.ui.xml:217 ui/macos.ui.xml:813 ui/macos.ui.xml:1011
  202 +#: ui/macos.ui.xml:1118 ui/linux.ui.xml:217 ui/linux.ui.xml:813
  203 +#: ui/linux.ui.xml:1011 ui/linux.ui.xml:1118
563 204 msgid "Close window"
564 205 msgstr ""
565 206  
... ... @@ -571,7 +212,7 @@ msgstr &quot;&quot;
571 212 msgid "Connect"
572 213 msgstr ""
573 214  
574   -#: ui/windows.ui.xml:450 ui/linux.ui.xml:450
  215 +#: ui/windows.ui.xml:450 ui/macos.ui.xml:450 ui/linux.ui.xml:450
575 216 msgid "Connect on startup"
576 217 msgstr ""
577 218  
... ... @@ -579,71 +220,73 @@ msgstr &quot;&quot;
579 220 msgid "Connect to host"
580 221 msgstr ""
581 222  
582   -#: src/objects/window/window.c:802 src/objects/window/page.c:218
  223 +#: src/objects/window/window.c:808 src/objects/window/page.c:218
583 224 msgid "Connected to host"
584 225 msgstr ""
585 226  
586   -#: src/objects/application/actions/about.c:153
  227 +#: src/objects/application/actions/about.c:176
587 228 msgid "Contributors"
588 229 msgstr ""
589 230  
590   -#: ui/windows.ui.xml:237 ui/windows.ui.xml:686 ui/linux.ui.xml:237
591   -#: ui/linux.ui.xml:686
  231 +#: ui/windows.ui.xml:237 ui/windows.ui.xml:686 ui/macos.ui.xml:237
  232 +#: ui/macos.ui.xml:686 ui/linux.ui.xml:237 ui/linux.ui.xml:686
592 233 msgid "Copy"
593 234 msgstr ""
594 235  
595   -#: ui/windows.ui.xml:706 ui/linux.ui.xml:706
  236 +#: ui/windows.ui.xml:706 ui/macos.ui.xml:706 ui/linux.ui.xml:706
596 237 msgid "Copy as HTML"
597 238 msgstr ""
598 239  
599   -#: ui/windows.ui.xml:711 ui/linux.ui.xml:711
  240 +#: ui/windows.ui.xml:711 ui/macos.ui.xml:711 ui/linux.ui.xml:711
600 241 msgid "Copy as image"
601 242 msgstr ""
602 243  
603   -#: ui/windows.ui.xml:247 ui/windows.ui.xml:701 ui/linux.ui.xml:247
604   -#: ui/linux.ui.xml:701
  244 +#: ui/windows.ui.xml:247 ui/windows.ui.xml:701 ui/macos.ui.xml:247
  245 +#: ui/macos.ui.xml:701 ui/linux.ui.xml:247 ui/linux.ui.xml:701
605 246 msgid "Copy as table"
606 247 msgstr ""
607 248  
608   -#: ui/windows.ui.xml:242 ui/windows.ui.xml:696 ui/linux.ui.xml:242
609   -#: ui/linux.ui.xml:696
  249 +#: ui/windows.ui.xml:242 ui/windows.ui.xml:696 ui/macos.ui.xml:242
  250 +#: ui/macos.ui.xml:696 ui/linux.ui.xml:242 ui/linux.ui.xml:696
610 251 msgid "Copy as text"
611 252 msgstr ""
612 253  
613   -#: src/objects/application/actions/about.c:159
  254 +#: src/objects/application/actions/about.c:182
614 255 msgid "Copyright © 2008 Banco do Brasil S.A."
615 256 msgstr ""
616 257  
617 258 #: src/objects/os/linux/savedesktopicon.c:114
618 259 #: src/objects/os/windows/savedesktopicon.c:107
  260 +#: src/objects/os/macos/savedesktopicon.c:54
619 261 msgid "Create shortcut for the current session"
620 262 msgstr ""
621 263  
622   -#: ui/windows.ui.xml:475 ui/windows.ui.xml:902 ui/linux.ui.xml:475
623   -#: ui/linux.ui.xml:902
  264 +#: ui/windows.ui.xml:475 ui/windows.ui.xml:902 ui/macos.ui.xml:475
  265 +#: ui/macos.ui.xml:902 ui/linux.ui.xml:475 ui/linux.ui.xml:902
624 266 msgid "Cross hair cursor"
625 267 msgstr ""
626 268  
627   -#: ui/windows.ui.xml:177 ui/windows.ui.xml:644 ui/linux.ui.xml:177
628   -#: ui/linux.ui.xml:644
  269 +#: ui/windows.ui.xml:177 ui/windows.ui.xml:644 ui/macos.ui.xml:177
  270 +#: ui/macos.ui.xml:644 ui/linux.ui.xml:177 ui/linux.ui.xml:644
629 271 msgid "Current Screen"
630 272 msgstr ""
631 273  
632   -#: ui/windows.ui.xml:140 ui/windows.ui.xml:607 ui/linux.ui.xml:140
633   -#: ui/linux.ui.xml:607
  274 +#: ui/windows.ui.xml:140 ui/windows.ui.xml:607 ui/macos.ui.xml:140
  275 +#: ui/macos.ui.xml:607 ui/linux.ui.xml:140 ui/linux.ui.xml:607
634 276 msgid "Current screen"
635 277 msgstr ""
636 278  
637   -#: ui/windows.ui.xml:670 ui/linux.ui.xml:670
  279 +#: ui/windows.ui.xml:670 ui/macos.ui.xml:670 ui/linux.ui.xml:670
638 280 msgid "Current session"
639 281 msgstr ""
640 282  
641   -#: ui/windows.ui.xml:257 ui/windows.ui.xml:716 ui/linux.ui.xml:257
642   -#: ui/linux.ui.xml:716
  283 +#: ui/windows.ui.xml:257 ui/windows.ui.xml:716 ui/macos.ui.xml:257
  284 +#: ui/macos.ui.xml:716 ui/linux.ui.xml:257 ui/linux.ui.xml:716
643 285 msgid "Cut"
644 286 msgstr ""
645 287  
646 288 #: ui/windows.ui.xml:315 ui/windows.ui.xml:735 ui/windows.ui.xml:877
  289 +#: ui/macos.ui.xml:315 ui/macos.ui.xml:735 ui/macos.ui.xml:877
647 290 #: ui/linux.ui.xml:315 ui/linux.ui.xml:735 ui/linux.ui.xml:877
648 291 msgid "Delete Field"
649 292 msgstr ""
... ... @@ -652,17 +295,18 @@ msgstr &quot;&quot;
652 295 msgid "Description"
653 296 msgstr ""
654 297  
655   -#: ui/windows.ui.xml:808 ui/windows.ui.xml:1006 ui/linux.ui.xml:808
656   -#: ui/linux.ui.xml:1006
  298 +#: ui/windows.ui.xml:808 ui/windows.ui.xml:1006 ui/macos.ui.xml:808
  299 +#: ui/macos.ui.xml:1006 ui/linux.ui.xml:808 ui/linux.ui.xml:1006
657 300 msgid "Disconnect"
658 301 msgstr ""
659 302  
660   -#: src/objects/window/window.c:802 src/objects/window/window.c:829
  303 +#: src/objects/window/window.c:808 src/objects/window/window.c:835
661 304 #: src/objects/window/page.c:207
662 305 msgid "Disconnected from host"
663 306 msgstr ""
664 307  
665 308 #: ui/windows.ui.xml:540 ui/windows.ui.xml:929 ui/windows.ui.xml:1045
  309 +#: ui/macos.ui.xml:540 ui/macos.ui.xml:929 ui/macos.ui.xml:1045
666 310 #: ui/linux.ui.xml:540 ui/linux.ui.xml:929 ui/linux.ui.xml:1045
667 311 msgid "Dynamic font spacing"
668 312 msgstr ""
... ... @@ -692,16 +336,19 @@ msgid &quot;End&quot;
692 336 msgstr ""
693 337  
694 338 #: ui/windows.ui.xml:310 ui/windows.ui.xml:730 ui/windows.ui.xml:872
  339 +#: ui/macos.ui.xml:310 ui/macos.ui.xml:730 ui/macos.ui.xml:872
695 340 #: ui/linux.ui.xml:310 ui/linux.ui.xml:730 ui/linux.ui.xml:872
696 341 msgid "Erase input"
697 342 msgstr ""
698 343  
699 344 #: ui/windows.ui.xml:320 ui/windows.ui.xml:740 ui/windows.ui.xml:882
  345 +#: ui/macos.ui.xml:320 ui/macos.ui.xml:740 ui/macos.ui.xml:882
700 346 #: ui/linux.ui.xml:320 ui/linux.ui.xml:740 ui/linux.ui.xml:882
701 347 msgid "Erase to end of field"
702 348 msgstr ""
703 349  
704 350 #: ui/windows.ui.xml:325 ui/windows.ui.xml:745 ui/windows.ui.xml:887
  351 +#: ui/macos.ui.xml:325 ui/macos.ui.xml:745 ui/macos.ui.xml:887
705 352 #: ui/linux.ui.xml:325 ui/linux.ui.xml:745 ui/linux.ui.xml:887
706 353 msgid "Erase to end of line"
707 354 msgstr ""
... ... @@ -710,7 +357,7 @@ msgstr &quot;&quot;
710 357 msgid "Error starting session"
711 358 msgstr ""
712 359  
713   -#: ui/windows.ui.xml:353 ui/linux.ui.xml:353
  360 +#: ui/windows.ui.xml:353 ui/macos.ui.xml:353 ui/linux.ui.xml:353
714 361 msgid "Field attributes"
715 362 msgstr ""
716 363  
... ... @@ -718,11 +365,12 @@ msgstr &quot;&quot;
718 365 msgid "File for session preferences"
719 366 msgstr ""
720 367  
721   -#: ui/windows.ui.xml:470 ui/linux.ui.xml:470
  368 +#: ui/windows.ui.xml:470 ui/macos.ui.xml:470 ui/linux.ui.xml:470
722 369 msgid "Full Screen"
723 370 msgstr ""
724 371  
725 372 #: ui/windows.ui.xml:779 ui/windows.ui.xml:955 ui/windows.ui.xml:1050
  373 +#: ui/macos.ui.xml:779 ui/macos.ui.xml:955 ui/macos.ui.xml:1050
726 374 #: ui/linux.ui.xml:779 ui/linux.ui.xml:955 ui/linux.ui.xml:1050
727 375 msgid "Full screen"
728 376 msgstr ""
... ... @@ -731,16 +379,16 @@ msgstr &quot;&quot;
731 379 msgid "Generic name"
732 380 msgstr ""
733 381  
734   -#: ui/windows.ui.xml:37 ui/windows.ui.xml:550 ui/linux.ui.xml:37
735   -#: ui/linux.ui.xml:550
  382 +#: ui/windows.ui.xml:37 ui/windows.ui.xml:550 ui/macos.ui.xml:37
  383 +#: ui/macos.ui.xml:550 ui/linux.ui.xml:37 ui/linux.ui.xml:550
736 384 msgid "Help"
737 385 msgstr ""
738 386  
739   -#: ui/windows.ui.xml:390 ui/linux.ui.xml:390
  387 +#: ui/windows.ui.xml:390 ui/macos.ui.xml:390 ui/linux.ui.xml:390
740 388 msgid "Host and Emulation settings"
741 389 msgstr ""
742 390  
743   -#: src/objects/application/actions/about.c:111 src/objects/window/window.c:592
  391 +#: src/objects/application/actions/about.c:134 src/objects/window/window.c:592
744 392 #: src/objects/os/linux/savedesktopicon.c:102
745 393 #: src/objects/os/windows/savedesktopicon.c:269
746 394 msgid "IBM 3270 Terminal emulator"
... ... @@ -782,7 +430,7 @@ msgstr &quot;&quot;
782 430 msgid "If the action can be activated"
783 431 msgstr ""
784 432  
785   -#: ui/windows.ui.xml:1022 ui/linux.ui.xml:1022
  433 +#: ui/windows.ui.xml:1022 ui/macos.ui.xml:1022 ui/linux.ui.xml:1022
786 434 msgid "Insert"
787 435 msgstr ""
788 436  
... ... @@ -802,11 +450,11 @@ msgstr &quot;&quot;
802 450 msgid "Itens"
803 451 msgstr ""
804 452  
805   -#: ui/windows.ui.xml:515 ui/linux.ui.xml:515
  453 +#: ui/windows.ui.xml:515 ui/macos.ui.xml:515 ui/linux.ui.xml:515
806 454 msgid "Keep selected"
807 455 msgstr ""
808 456  
809   -#: ui/windows.ui.xml:395 ui/linux.ui.xml:395
  457 +#: ui/windows.ui.xml:395 ui/macos.ui.xml:395 ui/linux.ui.xml:395
810 458 msgid "Keyboard accelerators"
811 459 msgstr ""
812 460  
... ... @@ -830,7 +478,7 @@ msgstr &quot;&quot;
830 478 msgid "Keypads"
831 479 msgstr ""
832 480  
833   -#: src/objects/application/actions/about.c:163
  481 +#: src/objects/application/actions/about.c:186
834 482 msgid "LICENSE"
835 483 msgstr ""
836 484  
... ... @@ -850,56 +498,56 @@ msgstr &quot;&quot;
850 498 msgid "List of the available and unpacked actions"
851 499 msgstr ""
852 500  
853   -#: src/objects/application/application.c:179
  501 +#: src/objects/application/application.c:164
854 502 msgid "Log name"
855 503 msgstr ""
856 504  
857   -#: ui/windows.ui.xml:72 ui/linux.ui.xml:72
  505 +#: ui/windows.ui.xml:72 ui/macos.ui.xml:72 ui/linux.ui.xml:72
858 506 msgid "Main Menu"
859 507 msgstr ""
860 508  
861   -#: ui/windows.ui.xml:67 ui/linux.ui.xml:67
  509 +#: ui/windows.ui.xml:67 ui/macos.ui.xml:67 ui/linux.ui.xml:67
862 510 msgid "Main Toolbar"
863 511 msgstr ""
864 512  
865   -#: ui/windows.ui.xml:1093 ui/linux.ui.xml:1093
  513 +#: ui/windows.ui.xml:1093 ui/macos.ui.xml:1093 ui/linux.ui.xml:1093
866 514 msgid "Main menu"
867 515 msgstr ""
868 516  
869   -#: src/objects/application/actions/about.c:151
  517 +#: src/objects/application/actions/about.c:174
870 518 msgid "Maintainers"
871 519 msgstr ""
872 520  
873   -#: ui/windows.ui.xml:348 ui/linux.ui.xml:348
  521 +#: ui/windows.ui.xml:348 ui/macos.ui.xml:348 ui/linux.ui.xml:348
874 522 msgid "Menu"
875 523 msgstr ""
876 524  
877   -#: ui/windows.ui.xml:419 ui/windows.ui.xml:1059 ui/linux.ui.xml:419
878   -#: ui/linux.ui.xml:1059
  525 +#: ui/windows.ui.xml:419 ui/windows.ui.xml:1059 ui/macos.ui.xml:419
  526 +#: ui/macos.ui.xml:1059 ui/linux.ui.xml:419 ui/linux.ui.xml:1059
879 527 msgid "Model 2 - 80x24"
880 528 msgstr ""
881 529  
882   -#: ui/windows.ui.xml:424 ui/windows.ui.xml:1064 ui/linux.ui.xml:424
883   -#: ui/linux.ui.xml:1064
  530 +#: ui/windows.ui.xml:424 ui/windows.ui.xml:1064 ui/macos.ui.xml:424
  531 +#: ui/macos.ui.xml:1064 ui/linux.ui.xml:424 ui/linux.ui.xml:1064
884 532 msgid "Model 3 - 80x32"
885 533 msgstr ""
886 534  
887   -#: ui/windows.ui.xml:429 ui/windows.ui.xml:1069 ui/linux.ui.xml:429
888   -#: ui/linux.ui.xml:1069
  535 +#: ui/windows.ui.xml:429 ui/windows.ui.xml:1069 ui/macos.ui.xml:429
  536 +#: ui/macos.ui.xml:1069 ui/linux.ui.xml:429 ui/linux.ui.xml:1069
889 537 msgid "Model 4 - 80x43"
890 538 msgstr ""
891 539  
892   -#: ui/windows.ui.xml:434 ui/windows.ui.xml:1074 ui/linux.ui.xml:434
893   -#: ui/linux.ui.xml:1074
  540 +#: ui/windows.ui.xml:434 ui/windows.ui.xml:1074 ui/macos.ui.xml:434
  541 +#: ui/macos.ui.xml:1074 ui/linux.ui.xml:434 ui/linux.ui.xml:1074
894 542 msgid "Model 5 - 132x27"
895 543 msgstr ""
896 544  
897   -#: ui/windows.ui.xml:460 ui/windows.ui.xml:924 ui/linux.ui.xml:460
898   -#: ui/linux.ui.xml:924
  545 +#: ui/windows.ui.xml:460 ui/windows.ui.xml:924 ui/macos.ui.xml:460
  546 +#: ui/macos.ui.xml:924 ui/linux.ui.xml:460 ui/linux.ui.xml:924
899 547 msgid "Monocase"
900 548 msgstr ""
901 549  
902   -#: ui/windows.ui.xml:535 ui/linux.ui.xml:535
  550 +#: ui/windows.ui.xml:535 ui/macos.ui.xml:535 ui/linux.ui.xml:535
903 551 msgid "Network keep alive"
904 552 msgstr ""
905 553  
... ... @@ -927,11 +575,11 @@ msgstr &quot;&quot;
927 575 msgid "Open Session"
928 576 msgstr ""
929 577  
930   -#: ui/windows.ui.xml:56 ui/linux.ui.xml:56
  578 +#: ui/windows.ui.xml:56 ui/macos.ui.xml:56 ui/linux.ui.xml:56
931 579 msgid "Open in New Tab"
932 580 msgstr ""
933 581  
934   -#: ui/windows.ui.xml:51 ui/linux.ui.xml:51
  582 +#: ui/windows.ui.xml:51 ui/macos.ui.xml:51 ui/linux.ui.xml:51
935 583 msgid "Open in New Window"
936 584 msgstr ""
937 585  
... ... @@ -960,8 +608,9 @@ msgid &quot;Open session on the active terminal&quot;
960 608 msgstr ""
961 609  
962 610 #: ui/windows.ui.xml:447 ui/windows.ui.xml:755 ui/windows.ui.xml:897
963   -#: ui/windows.ui.xml:1042 ui/linux.ui.xml:447 ui/linux.ui.xml:755
964   -#: ui/linux.ui.xml:897 ui/linux.ui.xml:1042
  611 +#: ui/windows.ui.xml:1042 ui/macos.ui.xml:447 ui/macos.ui.xml:755
  612 +#: ui/macos.ui.xml:897 ui/macos.ui.xml:1042 ui/linux.ui.xml:447
  613 +#: ui/linux.ui.xml:755 ui/linux.ui.xml:897 ui/linux.ui.xml:1042
965 614 msgid "Options"
966 615 msgstr ""
967 616  
... ... @@ -969,23 +618,23 @@ msgstr &quot;&quot;
969 618 msgid "Parameter Type"
970 619 msgstr ""
971 620  
972   -#: ui/windows.ui.xml:262 ui/windows.ui.xml:829 ui/linux.ui.xml:262
973   -#: ui/linux.ui.xml:829
  621 +#: ui/windows.ui.xml:262 ui/windows.ui.xml:829 ui/macos.ui.xml:262
  622 +#: ui/macos.ui.xml:829 ui/linux.ui.xml:262 ui/linux.ui.xml:829
974 623 msgid "Paste from clipboard"
975 624 msgstr ""
976 625  
977   -#: ui/windows.ui.xml:272 ui/windows.ui.xml:839 ui/linux.ui.xml:272
978   -#: ui/linux.ui.xml:839
  626 +#: ui/windows.ui.xml:272 ui/windows.ui.xml:839 ui/macos.ui.xml:272
  627 +#: ui/macos.ui.xml:839 ui/linux.ui.xml:272 ui/linux.ui.xml:839
979 628 msgid "Paste from text file"
980 629 msgstr ""
981 630  
982   -#: ui/windows.ui.xml:267 ui/windows.ui.xml:834 ui/linux.ui.xml:267
983   -#: ui/linux.ui.xml:834
  631 +#: ui/windows.ui.xml:267 ui/windows.ui.xml:834 ui/macos.ui.xml:267
  632 +#: ui/macos.ui.xml:834 ui/linux.ui.xml:267 ui/linux.ui.xml:834
984 633 msgid "Paste next"
985 634 msgstr ""
986 635  
987   -#: ui/windows.ui.xml:485 ui/windows.ui.xml:941 ui/linux.ui.xml:485
988   -#: ui/linux.ui.xml:941
  636 +#: ui/windows.ui.xml:485 ui/windows.ui.xml:941 ui/macos.ui.xml:485
  637 +#: ui/macos.ui.xml:941 ui/linux.ui.xml:485 ui/linux.ui.xml:941
989 638 msgid "Paste with left margin"
990 639 msgstr ""
991 640  
... ... @@ -998,20 +647,20 @@ msgstr &quot;&quot;
998 647 msgid "Position"
999 648 msgstr ""
1000 649  
1001   -#: ui/windows.ui.xml:662 ui/linux.ui.xml:662
  650 +#: ui/windows.ui.xml:662 ui/macos.ui.xml:662 ui/linux.ui.xml:662
1002 651 msgid "Preferences"
1003 652 msgstr ""
1004 653  
1005   -#: ui/windows.ui.xml:174 ui/windows.ui.xml:641 ui/linux.ui.xml:174
1006   -#: ui/linux.ui.xml:641
  654 +#: ui/windows.ui.xml:174 ui/windows.ui.xml:641 ui/macos.ui.xml:174
  655 +#: ui/macos.ui.xml:641 ui/linux.ui.xml:174 ui/linux.ui.xml:641
1007 656 msgid "Print"
1008 657 msgstr ""
1009 658  
1010   -#: ui/windows.ui.xml:992 ui/linux.ui.xml:992
  659 +#: ui/windows.ui.xml:992 ui/macos.ui.xml:992 ui/linux.ui.xml:992
1011 660 msgid "Print screen"
1012 661 msgstr ""
1013 662  
1014   -#: ui/windows.ui.xml:795 ui/linux.ui.xml:795
  663 +#: ui/windows.ui.xml:795 ui/macos.ui.xml:795 ui/linux.ui.xml:795
1015 664 msgid "Print selected"
1016 665 msgstr ""
1017 666  
... ... @@ -1021,7 +670,7 @@ msgid &quot;Property \&quot;%s\&quot; is invalid for this object&quot;
1021 670 msgstr ""
1022 671  
1023 672 #: src/objects/application/actions/window.c:64 ui/windows.ui.xml:89
1024   -#: ui/linux.ui.xml:89
  673 +#: ui/macos.ui.xml:89 ui/linux.ui.xml:89
1025 674 msgid "Quit"
1026 675 msgstr ""
1027 676  
... ... @@ -1029,13 +678,13 @@ msgstr &quot;&quot;
1029 678 msgid "Rename Session"
1030 679 msgstr ""
1031 680  
1032   -#: ui/windows.ui.xml:296 ui/windows.ui.xml:858 ui/linux.ui.xml:296
1033   -#: ui/linux.ui.xml:858
  681 +#: ui/windows.ui.xml:296 ui/windows.ui.xml:858 ui/macos.ui.xml:296
  682 +#: ui/macos.ui.xml:858 ui/linux.ui.xml:296 ui/linux.ui.xml:858
1034 683 msgid "Reselect"
1035 684 msgstr ""
1036 685  
1037   -#: ui/windows.ui.xml:480 ui/windows.ui.xml:912 ui/linux.ui.xml:480
1038   -#: ui/linux.ui.xml:912
  686 +#: ui/windows.ui.xml:480 ui/windows.ui.xml:912 ui/macos.ui.xml:480
  687 +#: ui/macos.ui.xml:912 ui/linux.ui.xml:480 ui/linux.ui.xml:912
1039 688 msgid "Resize on alternate screen"
1040 689 msgstr ""
1041 690  
... ... @@ -1043,8 +692,8 @@ msgstr &quot;&quot;
1043 692 msgid "Right"
1044 693 msgstr ""
1045 694  
1046   -#: ui/windows.ui.xml:135 ui/windows.ui.xml:602 ui/linux.ui.xml:135
1047   -#: ui/linux.ui.xml:602
  695 +#: ui/windows.ui.xml:135 ui/windows.ui.xml:602 ui/macos.ui.xml:135
  696 +#: ui/macos.ui.xml:602 ui/linux.ui.xml:135 ui/linux.ui.xml:602
1048 697 msgid "Save"
1049 698 msgstr ""
1050 699  
... ... @@ -1052,11 +701,11 @@ msgstr &quot;&quot;
1052 701 msgid "Save current session preferences to file"
1053 702 msgstr ""
1054 703  
1055   -#: ui/windows.ui.xml:987 ui/linux.ui.xml:987
  704 +#: ui/windows.ui.xml:987 ui/macos.ui.xml:987 ui/linux.ui.xml:987
1056 705 msgid "Save screen"
1057 706 msgstr ""
1058 707  
1059   -#: ui/windows.ui.xml:790 ui/linux.ui.xml:790
  708 +#: ui/windows.ui.xml:790 ui/macos.ui.xml:790 ui/linux.ui.xml:790
1060 709 msgid "Save selected"
1061 710 msgstr ""
1062 711  
... ... @@ -1066,14 +715,15 @@ msgstr &quot;&quot;
1066 715  
1067 716 #: src/objects/os/linux/savedesktopicon.c:113
1068 717 #: src/objects/os/windows/savedesktopicon.c:106
  718 +#: src/objects/os/macos/savedesktopicon.c:53
1069 719 msgid "Save session shortcut"
1070 720 msgstr ""
1071 721  
1072   -#: src/objects/os/linux/savedesktopicon.c:264
  722 +#: src/objects/os/linux/savedesktopicon.c:230
1073 723 msgid "Save to session filename"
1074 724 msgstr ""
1075 725  
1076   -#: src/objects/os/linux/savedesktopicon.c:236
  726 +#: src/objects/os/linux/savedesktopicon.c:202
1077 727 msgid "Save to shortcut file"
1078 728 msgstr ""
1079 729  
... ... @@ -1081,23 +731,23 @@ msgstr &quot;&quot;
1081 731 msgid "Save to windows shortcut"
1082 732 msgstr ""
1083 733  
1084   -#: ui/windows.ui.xml:416 ui/windows.ui.xml:1056 ui/linux.ui.xml:416
1085   -#: ui/linux.ui.xml:1056
  734 +#: ui/windows.ui.xml:416 ui/windows.ui.xml:1056 ui/macos.ui.xml:416
  735 +#: ui/macos.ui.xml:1056 ui/linux.ui.xml:416 ui/linux.ui.xml:1056
1086 736 msgid "Screen size"
1087 737 msgstr ""
1088 738  
1089   -#: ui/windows.ui.xml:286 ui/windows.ui.xml:853 ui/linux.ui.xml:286
1090   -#: ui/linux.ui.xml:853
  739 +#: ui/windows.ui.xml:286 ui/windows.ui.xml:853 ui/macos.ui.xml:286
  740 +#: ui/macos.ui.xml:853 ui/linux.ui.xml:286 ui/linux.ui.xml:853
1091 741 msgid "Select Field"
1092 742 msgstr ""
1093 743  
1094   -#: ui/windows.ui.xml:281 ui/windows.ui.xml:848 ui/linux.ui.xml:281
1095   -#: ui/linux.ui.xml:848
  744 +#: ui/windows.ui.xml:281 ui/windows.ui.xml:848 ui/macos.ui.xml:281
  745 +#: ui/macos.ui.xml:848 ui/linux.ui.xml:281 ui/linux.ui.xml:848
1096 746 msgid "Select all"
1097 747 msgstr ""
1098 748  
1099   -#: ui/windows.ui.xml:495 ui/windows.ui.xml:760 ui/linux.ui.xml:495
1100   -#: ui/linux.ui.xml:760
  749 +#: ui/windows.ui.xml:495 ui/windows.ui.xml:760 ui/macos.ui.xml:495
  750 +#: ui/macos.ui.xml:760 ui/linux.ui.xml:495 ui/linux.ui.xml:760
1101 751 msgid "Select by rectangles"
1102 752 msgstr ""
1103 753  
... ... @@ -1110,8 +760,9 @@ msgid &quot;Selected&quot;
1110 760 msgstr ""
1111 761  
1112 762 #: ui/windows.ui.xml:145 ui/windows.ui.xml:182 ui/windows.ui.xml:612
1113   -#: ui/windows.ui.xml:649 ui/linux.ui.xml:145 ui/linux.ui.xml:182
1114   -#: ui/linux.ui.xml:612 ui/linux.ui.xml:649
  763 +#: ui/windows.ui.xml:649 ui/macos.ui.xml:145 ui/macos.ui.xml:182
  764 +#: ui/macos.ui.xml:612 ui/macos.ui.xml:649 ui/linux.ui.xml:145
  765 +#: ui/linux.ui.xml:182 ui/linux.ui.xml:612 ui/linux.ui.xml:649
1115 766 msgid "Selected area"
1116 767 msgstr ""
1117 768  
... ... @@ -1120,7 +771,8 @@ msgid &quot;Send/Receive&quot;
1120 771 msgstr ""
1121 772  
1122 773 #: src/objects/window/actions/filetransfer.c:46 ui/windows.ui.xml:196
1123   -#: ui/windows.ui.xml:997 ui/linux.ui.xml:196 ui/linux.ui.xml:997
  774 +#: ui/windows.ui.xml:997 ui/macos.ui.xml:196 ui/macos.ui.xml:997
  775 +#: ui/linux.ui.xml:196 ui/linux.ui.xml:997
1124 776 msgid "Send/Receive files"
1125 777 msgstr ""
1126 778  
... ... @@ -1128,12 +780,13 @@ msgstr &quot;&quot;
1128 780 msgid "Separator"
1129 781 msgstr ""
1130 782  
1131   -#: ui/windows.ui.xml:48 ui/windows.ui.xml:584 ui/linux.ui.xml:48
1132   -#: ui/linux.ui.xml:584
  783 +#: ui/windows.ui.xml:48 ui/windows.ui.xml:584 ui/macos.ui.xml:48
  784 +#: ui/macos.ui.xml:584 ui/linux.ui.xml:48 ui/linux.ui.xml:584
1133 785 msgid "Session"
1134 786 msgstr ""
1135 787  
1136 788 #: ui/windows.ui.xml:77 ui/windows.ui.xml:978 ui/windows.ui.xml:1098
  789 +#: ui/macos.ui.xml:77 ui/macos.ui.xml:978 ui/macos.ui.xml:1098
1137 790 #: ui/linux.ui.xml:77 ui/linux.ui.xml:978 ui/linux.ui.xml:1098
1138 791 msgid "Session Trace"
1139 792 msgstr ""
... ... @@ -1143,13 +796,13 @@ msgstr &quot;&quot;
1143 796 msgid "Session file"
1144 797 msgstr ""
1145 798  
1146   -#: ui/windows.ui.xml:127 ui/windows.ui.xml:594 ui/linux.ui.xml:127
1147   -#: ui/linux.ui.xml:594
  799 +#: ui/windows.ui.xml:127 ui/windows.ui.xml:594 ui/macos.ui.xml:127
  800 +#: ui/macos.ui.xml:594 ui/linux.ui.xml:127 ui/linux.ui.xml:594
1148 801 msgid "Session in New Tab"
1149 802 msgstr ""
1150 803  
1151   -#: ui/windows.ui.xml:122 ui/windows.ui.xml:589 ui/linux.ui.xml:122
1152   -#: ui/linux.ui.xml:589
  804 +#: ui/windows.ui.xml:122 ui/windows.ui.xml:589 ui/macos.ui.xml:122
  805 +#: ui/macos.ui.xml:589 ui/linux.ui.xml:122 ui/linux.ui.xml:589
1153 806 msgid "Session in new window"
1154 807 msgstr ""
1155 808  
... ... @@ -1159,20 +812,21 @@ msgid &quot;Session name&quot;
1159 812 msgstr ""
1160 813  
1161 814 #: src/objects/window/actions/sessionproperties.c:36 ui/windows.ui.xml:164
1162   -#: ui/windows.ui.xml:631 ui/windows.ui.xml:1112 ui/linux.ui.xml:164
  815 +#: ui/windows.ui.xml:631 ui/windows.ui.xml:1112 ui/macos.ui.xml:164
  816 +#: ui/macos.ui.xml:631 ui/macos.ui.xml:1112 ui/linux.ui.xml:164
1163 817 #: ui/linux.ui.xml:631 ui/linux.ui.xml:1112
1164 818 msgid "Session preferences"
1165 819 msgstr ""
1166 820  
1167   -#: src/objects/application/application.c:258
  821 +#: src/objects/application/application.c:246
1168 822 msgid "Set default log file name"
1169 823 msgstr ""
1170 824  
1171   -#: src/objects/application/application.c:249
  825 +#: src/objects/application/application.c:236
1172 826 msgid "Set the user-interface type"
1173 827 msgstr ""
1174 828  
1175   -#: ui/windows.ui.xml:382 ui/linux.ui.xml:382
  829 +#: ui/windows.ui.xml:382 ui/macos.ui.xml:382 ui/linux.ui.xml:382
1176 830 msgid "Settings"
1177 831 msgstr ""
1178 832  
... ... @@ -1193,8 +847,8 @@ msgstr &quot;&quot;
1193 847 msgid "Shortcut file"
1194 848 msgstr ""
1195 849  
1196   -#: ui/windows.ui.xml:159 ui/windows.ui.xml:626 ui/linux.ui.xml:159
1197   -#: ui/linux.ui.xml:626
  850 +#: ui/windows.ui.xml:159 ui/windows.ui.xml:626 ui/macos.ui.xml:159
  851 +#: ui/macos.ui.xml:626 ui/linux.ui.xml:159 ui/linux.ui.xml:626
1198 852 msgid "Shortcut for this session"
1199 853 msgstr ""
1200 854  
... ... @@ -1202,15 +856,15 @@ msgstr &quot;&quot;
1202 856 msgid "Shortcut name"
1203 857 msgstr ""
1204 858  
1205   -#: ui/windows.ui.xml:510 ui/linux.ui.xml:510
  859 +#: ui/windows.ui.xml:510 ui/macos.ui.xml:510 ui/linux.ui.xml:510
1206 860 msgid "Show Underline"
1207 861 msgstr ""
1208 862  
1209   -#: ui/windows.ui.xml:774 ui/linux.ui.xml:774
  863 +#: ui/windows.ui.xml:774 ui/macos.ui.xml:774 ui/linux.ui.xml:774
1210 864 msgid "Show menu"
1211 865 msgstr ""
1212 866  
1213   -#: ui/windows.ui.xml:769 ui/linux.ui.xml:769
  867 +#: ui/windows.ui.xml:769 ui/macos.ui.xml:769 ui/linux.ui.xml:769
1214 868 msgid "Show toolbar"
1215 869 msgstr ""
1216 870  
... ... @@ -1218,12 +872,12 @@ msgstr &quot;&quot;
1218 872 msgid "Small"
1219 873 msgstr ""
1220 874  
1221   -#: ui/windows.ui.xml:520 ui/windows.ui.xml:936 ui/linux.ui.xml:520
1222   -#: ui/linux.ui.xml:936
  875 +#: ui/windows.ui.xml:520 ui/windows.ui.xml:936 ui/macos.ui.xml:520
  876 +#: ui/macos.ui.xml:936 ui/linux.ui.xml:520 ui/linux.ui.xml:936
1223 877 msgid "Smart paste"
1224 878 msgstr ""
1225 879  
1226   -#: src/objects/os/linux/savedesktopicon.c:239
  880 +#: src/objects/os/linux/savedesktopicon.c:205
1227 881 msgid "Standard desktop files"
1228 882 msgstr ""
1229 883  
... ... @@ -1264,16 +918,16 @@ msgstr &quot;&quot;
1264 918 msgid "TN3270 Session description"
1265 919 msgstr ""
1266 920  
1267   -#: ui/windows.ui.xml:111 ui/windows.ui.xml:573 ui/linux.ui.xml:111
1268   -#: ui/linux.ui.xml:573
  921 +#: ui/windows.ui.xml:111 ui/windows.ui.xml:573 ui/macos.ui.xml:111
  922 +#: ui/macos.ui.xml:573 ui/linux.ui.xml:111 ui/linux.ui.xml:573
1269 923 msgid "Tab with default session"
1270 924 msgstr ""
1271 925  
1272   -#: ui/windows.ui.xml:405 ui/linux.ui.xml:405
  926 +#: ui/windows.ui.xml:405 ui/macos.ui.xml:405 ui/linux.ui.xml:405
1273 927 msgid "Terminal colors"
1274 928 msgstr ""
1275 929  
1276   -#: ui/windows.ui.xml:442 ui/linux.ui.xml:442
  930 +#: ui/windows.ui.xml:442 ui/macos.ui.xml:442 ui/linux.ui.xml:442
1277 931 msgid "Terminal font"
1278 932 msgstr ""
1279 933  
... ... @@ -1293,7 +947,7 @@ msgstr &quot;&quot;
1293 947 msgid "The action tooltip"
1294 948 msgstr ""
1295 949  
1296   -#: src/objects/application/application.c:165
  950 +#: src/objects/application/application.c:150
1297 951 msgid "The code of the User interface type"
1298 952 msgstr ""
1299 953  
... ... @@ -1306,7 +960,7 @@ msgstr &quot;&quot;
1306 960 msgid "The file with the session preferences for this shortcut"
1307 961 msgstr ""
1308 962  
1309   -#: src/objects/application/application.c:180
  963 +#: src/objects/application/application.c:165
1310 964 msgid "The full path of the default log file"
1311 965 msgstr ""
1312 966  
... ... @@ -1379,6 +1033,10 @@ msgstr &quot;&quot;
1379 1033 msgid "The type of the state kept by the action"
1380 1034 msgstr ""
1381 1035  
  1036 +#: src/objects/os/macos/savedesktopicon.c:68
  1037 +msgid "This action is not available in this platform"
  1038 +msgstr ""
  1039 +
1382 1040 #: src/objects/window/header-settings.c:84
1383 1041 msgid "Title bar"
1384 1042 msgstr ""
... ... @@ -1388,7 +1046,8 @@ msgid &quot;Title bar actions&quot;
1388 1046 msgstr ""
1389 1047  
1390 1048 #: src/objects/toolbar/settings.c:94 ui/windows.ui.xml:343
1391   -#: ui/windows.ui.xml:968 ui/windows.ui.xml:1088 ui/linux.ui.xml:343
  1049 +#: ui/windows.ui.xml:968 ui/windows.ui.xml:1088 ui/macos.ui.xml:343
  1050 +#: ui/macos.ui.xml:968 ui/macos.ui.xml:1088 ui/linux.ui.xml:343
1392 1051 #: ui/linux.ui.xml:968 ui/linux.ui.xml:1088
1393 1052 msgid "Toolbar"
1394 1053 msgstr ""
... ... @@ -1409,20 +1068,20 @@ msgstr &quot;&quot;
1409 1068 msgid "Top (system default)"
1410 1069 msgstr ""
1411 1070  
1412   -#: ui/windows.ui.xml:973 ui/linux.ui.xml:973
  1071 +#: ui/windows.ui.xml:973 ui/macos.ui.xml:973 ui/linux.ui.xml:973
1413 1072 msgid "Top menu"
1414 1073 msgstr ""
1415 1074  
1416   -#: ui/windows.ui.xml:338 ui/linux.ui.xml:338
  1075 +#: ui/windows.ui.xml:338 ui/macos.ui.xml:338 ui/linux.ui.xml:338
1417 1076 msgid "Trace"
1418 1077 msgstr ""
1419 1078  
1420   -#: ui/windows.ui.xml:465 ui/windows.ui.xml:1027 ui/linux.ui.xml:465
1421   -#: ui/linux.ui.xml:1027
  1079 +#: ui/windows.ui.xml:465 ui/windows.ui.xml:1027 ui/macos.ui.xml:465
  1080 +#: ui/macos.ui.xml:1027 ui/linux.ui.xml:465 ui/linux.ui.xml:1027
1422 1081 msgid "Track Cursor"
1423 1082 msgstr ""
1424 1083  
1425   -#: src/objects/application/application.c:164
  1084 +#: src/objects/application/application.c:149
1426 1085 msgid "UI Type"
1427 1086 msgstr ""
1428 1087  
... ... @@ -1437,38 +1096,39 @@ msgstr &quot;&quot;
1437 1096 msgid "Unable to load session preferences from '%s'"
1438 1097 msgstr ""
1439 1098  
1440   -#: ui/windows.ui.xml:291 ui/windows.ui.xml:800 ui/linux.ui.xml:291
1441   -#: ui/linux.ui.xml:800
  1099 +#: ui/windows.ui.xml:291 ui/windows.ui.xml:800 ui/macos.ui.xml:291
  1100 +#: ui/macos.ui.xml:800 ui/linux.ui.xml:291 ui/linux.ui.xml:800
1442 1101 msgid "Unselect"
1443 1102 msgstr ""
1444 1103  
1445   -#: src/objects/application/actions/about.c:90
  1104 +#: src/objects/application/actions/about.c:113
1446 1105 #, c-format
1447 1106 msgid "Unstable version %s-%s"
1448 1107 msgstr ""
1449 1108  
1450   -#: ui/windows.ui.xml:530 ui/windows.ui.xml:907 ui/linux.ui.xml:530
1451   -#: ui/linux.ui.xml:907
  1109 +#: ui/windows.ui.xml:530 ui/windows.ui.xml:907 ui/macos.ui.xml:530
  1110 +#: ui/macos.ui.xml:907 ui/linux.ui.xml:530 ui/linux.ui.xml:907
1452 1111 msgid "Use +/- for field navigation"
1453 1112 msgstr ""
1454 1113  
1455   -#: src/objects/application/actions/about.c:92
  1114 +#: src/objects/application/actions/about.c:115
1456 1115 #, c-format
1457 1116 msgid "Version %s-%s"
1458 1117 msgstr ""
1459 1118  
1460 1119 #: src/objects/window/header.c:63 ui/windows.ui.xml:64 ui/windows.ui.xml:965
1461   -#: ui/windows.ui.xml:1085 ui/linux.ui.xml:64 ui/linux.ui.xml:965
  1120 +#: ui/windows.ui.xml:1085 ui/macos.ui.xml:64 ui/macos.ui.xml:965
  1121 +#: ui/macos.ui.xml:1085 ui/linux.ui.xml:64 ui/linux.ui.xml:965
1462 1122 #: ui/linux.ui.xml:1085
1463 1123 msgid "View"
1464 1124 msgstr ""
1465 1125  
1466   -#: src/objects/application/actions/about.c:183
  1126 +#: src/objects/application/actions/about.c:206
1467 1127 msgid "View this project on github"
1468 1128 msgstr ""
1469 1129  
1470   -#: ui/windows.ui.xml:106 ui/windows.ui.xml:568 ui/linux.ui.xml:106
1471   -#: ui/linux.ui.xml:568
  1130 +#: ui/windows.ui.xml:106 ui/windows.ui.xml:568 ui/macos.ui.xml:106
  1131 +#: ui/macos.ui.xml:568 ui/linux.ui.xml:106 ui/linux.ui.xml:568
1472 1132 msgid "Window with default session"
1473 1133 msgstr ""
1474 1134  
... ... @@ -1481,7 +1141,7 @@ msgid &quot;_Apply&quot;
1481 1141 msgstr ""
1482 1142  
1483 1143 #: src/objects/actions/save.c:102 src/objects/settings/dialog.c:78
1484   -#: src/objects/os/linux/savedesktopicon.c:174
  1144 +#: src/objects/os/linux/savedesktopicon.c:140
1485 1145 #: src/objects/os/windows/savedesktopicon.c:132
1486 1146 msgid "_Cancel"
1487 1147 msgstr ""
... ... @@ -1490,35 +1150,36 @@ msgstr &quot;&quot;
1490 1150 msgid "_Close session"
1491 1151 msgstr ""
1492 1152  
1493   -#: ui/windows.ui.xml:369 ui/windows.ui.xml:1107 ui/linux.ui.xml:369
1494   -#: ui/linux.ui.xml:1107
  1153 +#: ui/windows.ui.xml:369 ui/windows.ui.xml:1107 ui/macos.ui.xml:369
  1154 +#: ui/macos.ui.xml:1107 ui/linux.ui.xml:369 ui/linux.ui.xml:1107
1495 1155 msgid "_Connect"
1496 1156 msgstr ""
1497 1157  
1498   -#: ui/windows.ui.xml:374 ui/linux.ui.xml:374
  1158 +#: ui/windows.ui.xml:374 ui/macos.ui.xml:374 ui/linux.ui.xml:374
1499 1159 msgid "_Disconnect"
1500 1160 msgstr ""
1501 1161  
1502 1162 #: ui/windows.ui.xml:232 ui/windows.ui.xml:681 ui/windows.ui.xml:824
  1163 +#: ui/macos.ui.xml:232 ui/macos.ui.xml:681 ui/macos.ui.xml:824
1503 1164 #: ui/linux.ui.xml:232 ui/linux.ui.xml:681 ui/linux.ui.xml:824
1504 1165 msgid "_Edit"
1505 1166 msgstr ""
1506 1167  
1507   -#: ui/windows.ui.xml:99 ui/linux.ui.xml:99
  1168 +#: ui/windows.ui.xml:99 ui/macos.ui.xml:99 ui/linux.ui.xml:99
1508 1169 msgid "_File"
1509 1170 msgstr ""
1510 1171  
1511   -#: ui/windows.ui.xml:361 ui/linux.ui.xml:361
  1172 +#: ui/windows.ui.xml:361 ui/macos.ui.xml:361 ui/linux.ui.xml:361
1512 1173 msgid "_Network"
1513 1174 msgstr ""
1514 1175  
1515   -#: ui/windows.ui.xml:103 ui/windows.ui.xml:565 ui/linux.ui.xml:103
1516   -#: ui/linux.ui.xml:565
  1176 +#: ui/windows.ui.xml:103 ui/windows.ui.xml:565 ui/macos.ui.xml:103
  1177 +#: ui/macos.ui.xml:565 ui/linux.ui.xml:103 ui/linux.ui.xml:565
1517 1178 msgid "_New"
1518 1179 msgstr ""
1519 1180  
1520   -#: ui/windows.ui.xml:119 ui/windows.ui.xml:581 ui/linux.ui.xml:119
1521   -#: ui/linux.ui.xml:581
  1181 +#: ui/windows.ui.xml:119 ui/windows.ui.xml:581 ui/macos.ui.xml:119
  1182 +#: ui/macos.ui.xml:581 ui/linux.ui.xml:119 ui/linux.ui.xml:581
1522 1183 msgid "_Open"
1523 1184 msgstr ""
1524 1185  
... ... @@ -1530,19 +1191,19 @@ msgstr &quot;&quot;
1530 1191 msgid "_Rename session"
1531 1192 msgstr ""
1532 1193  
1533   -#: src/objects/actions/save.c:103 src/objects/os/linux/savedesktopicon.c:175
  1194 +#: src/objects/actions/save.c:103 src/objects/os/linux/savedesktopicon.c:141
1534 1195 #: src/objects/os/windows/savedesktopicon.c:133
1535 1196 msgid "_Save"
1536 1197 msgstr ""
1537 1198  
1538   -#: ui/windows.ui.xml:335 ui/linux.ui.xml:335
  1199 +#: ui/windows.ui.xml:335 ui/macos.ui.xml:335 ui/linux.ui.xml:335
1539 1200 msgid "_View"
1540 1201 msgstr ""
1541 1202  
1542   -#: src/objects/application/actions/about.c:182
  1203 +#: src/objects/application/actions/about.c:205
1543 1204 msgid "https://github.com/PerryWerneck/pw3270"
1544 1205 msgstr ""
1545 1206  
1546   -#: src/objects/application/actions/about.c:185
  1207 +#: src/objects/application/actions/about.c:208
1547 1208 msgid "translator-credits"
1548 1209 msgstr ""
... ...
mac/pw3270.modules 0 → 100644
... ... @@ -0,0 +1,27 @@
  1 +<?xml version="1.0"?>
  2 +<!DOCTYPE moduleset SYSTEM "moduleset.dtd">
  3 +<?xml-stylesheet type="text/xsl" href="moduleset.xsl"?>
  4 +<moduleset>
  5 +
  6 + <include href="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/modulesets-stable/gtk-osx.modules" />
  7 + <include href="https://raw.githubusercontent.com/PerryWerneck/libv3270/macos/mac/libv3270.modules" />
  8 +
  9 + <repository type="git" name="github.com" href="git://github.com/"/>
  10 +
  11 + <autotools id="pw3270">
  12 + <branch repo="github.com" module="PerryWerneck/pw3270" revision="macos" />
  13 + <dependencies>
  14 + <dep package="meta-gtk-osx-bootstrap" />
  15 + <dep package="glib" />
  16 + <dep package="gtk+-3.0" />
  17 + <dep package="gdk-pixbuf" />
  18 + <dep package="gtk-mac-integration" />
  19 + <dep package="adwaita-icon-theme" />
  20 + <dep package="hicolor-icon-theme" />
  21 + <dep package="lib3270"/>
  22 + <dep package="libv3270"/>
  23 + </dependencies>
  24 + </autotools>
  25 +
  26 +</moduleset>
  27 +
... ...
pw3270.cbp
... ... @@ -139,6 +139,12 @@
139 139 <Unit filename="src/objects/os/linux/savedesktopicon.c">
140 140 <Option compilerVar="CC" />
141 141 </Unit>
  142 + <Unit filename="src/objects/os/macos/open.c">
  143 + <Option compilerVar="CC" />
  144 + </Unit>
  145 + <Unit filename="src/objects/os/macos/savedesktopicon.c">
  146 + <Option compilerVar="CC" />
  147 + </Unit>
142 148 <Unit filename="src/objects/os/windows/open.c">
143 149 <Option compilerVar="CC" />
144 150 </Unit>
... ...
rpm/pw3270.spec
1 1 #
2 2 # spec file for package pw3270
3 3 #
4   -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
  4 +# Copyright (c) 2022 SUSE LLC
5 5 # Copyright (c) <2008> <Banco do Brasil S.A.>
6 6 #
7 7 # All modifications and additions to the file contributed by third parties
... ... @@ -16,31 +16,30 @@
16 16 # Please submit bugfixes or comments via https://bugs.opensuse.org/
17 17 #
18 18  
19   -#---[ Versions ]------------------------------------------------------------------------------------------------------
20 19  
21 20 %define _product %(pkg-config --variable=product_name lib3270)
22 21  
23 22 #---[ Packaging ]-----------------------------------------------------------------------------------------------------
24 23  
25   -Name: pw3270
26   -Version: 5.4
27   -Release: 0
28   -Summary: IBM 3270 Terminal emulator for GTK
29   -License: GPL-2.0
30   -Group: System/X11/Terminals
31   -Url: https://github.com/PerryWerneck/pw3270
  24 +Name: pw3270
  25 +Version: 5.4
  26 +Release: 0
  27 +Summary: IBM 3270 Terminal emulator for GTK
  28 +License: GPL-2.0-only
  29 +Group: System/X11/Terminals
  30 +URL: https://github.com/PerryWerneck/pw3270
32 31  
33   -Source: pw3270-%{version}.tar.xz
  32 +Source: pw3270-%{version}.tar.xz
34 33  
35   -BuildRoot: %{_tmppath}/%{name}-%{version}-build
  34 +BuildRoot: %{_tmppath}/%{name}-%{version}-build
36 35  
37   -Requires: shared-mime-info
38   -Requires: %{name}-branding = %{version}
  36 +Requires: %{name}-branding = %{version}
  37 +Requires: shared-mime-info
39 38  
40   -Recommends: libv3270-config
  39 +Recommends: libv3270-config
41 40  
42 41 #--[ Setup by distribution ]------------------------------------------------------------------------------------------
43   -#
  42 +#
44 43 # References:
45 44 #
46 45 # https://en.opensuse.org/openSUSE:Build_Service_cross_distribution_howto#Detect_a_distribution_flavor_for_special_code
... ... @@ -50,10 +49,10 @@ Recommends: libv3270-config
50 49  
51 50 %if 0%{?centos_version}
52 51  
53   -BuildRequires: gtk3-devel
54   -BuildRequires: glib2-devel
55   -BuildRequires: libv3270-devel >= 5.3
56   -BuildRequires: libappstream-glib
  52 +BuildRequires: glib2-devel
  53 +BuildRequires: gtk3-devel
  54 +BuildRequires: libappstream-glib
  55 +BuildRequires: libv3270-devel >= 5.3
57 56  
58 57 %endif
59 58  
... ... @@ -61,10 +60,10 @@ BuildRequires: libappstream-glib
61 60  
62 61 %if 0%{?fedora}
63 62  
64   -BuildRequires: pkgconfig(gtk+-3.0)
65   -BuildRequires: pkgconfig(glib-2.0)
66   -BuildRequires: pkgconfig(libv3270) >= 5.3
67   -BuildRequires: libappstream-glib
  63 +BuildRequires: libappstream-glib
  64 +BuildRequires: pkgconfig(glib-2.0)
  65 +BuildRequires: pkgconfig(gtk+-3.0)
  66 +BuildRequires: pkgconfig(libv3270) >= 5.3
68 67  
69 68 %endif
70 69  
... ... @@ -72,11 +71,11 @@ BuildRequires: libappstream-glib
72 71  
73 72 %if 0%{?suse_version}
74 73  
75   -BuildRequires: update-desktop-files
76   -BuildRequires: pkgconfig(gtk+-3.0)
77   -BuildRequires: pkgconfig(glib-2.0)
78   -BuildRequires: pkgconfig(libv3270) >= 5.3
79   -BuildRequires: appstream-glib
  74 +BuildRequires: appstream-glib
  75 +BuildRequires: update-desktop-files
  76 +BuildRequires: pkgconfig(glib-2.0)
  77 +BuildRequires: pkgconfig(gtk+-3.0)
  78 +BuildRequires: pkgconfig(libv3270) >= 5.3
80 79  
81 80 %glib2_gsettings_schema_requires
82 81  
... ... @@ -84,51 +83,69 @@ BuildRequires: appstream-glib
84 83  
85 84 #---------------------------------------------------------------------------------------------------------------------
86 85  
87   -BuildRequires: autoconf >= 2.61
88   -BuildRequires: automake
89   -BuildRequires: libtool
90   -BuildRequires: binutils
91   -BuildRequires: coreutils
92   -BuildRequires: desktop-file-utils
93   -BuildRequires: findutils
94   -BuildRequires: gcc-c++
95   -BuildRequires: gettext-devel
96   -BuildRequires: m4
97   -BuildRequires: pkgconfig
98   -BuildRequires: sed
99   -BuildRequires: fdupes
100   -BuildRequires: autoconf-archive
  86 +BuildRequires: autoconf >= 2.61
  87 +BuildRequires: autoconf-archive
  88 +BuildRequires: automake
  89 +BuildRequires: binutils
  90 +BuildRequires: coreutils
  91 +BuildRequires: desktop-file-utils
  92 +BuildRequires: fdupes
  93 +BuildRequires: findutils
  94 +BuildRequires: gcc-c++
  95 +BuildRequires: gettext-devel
  96 +BuildRequires: libtool
  97 +BuildRequires: m4
  98 +BuildRequires: pkgconfig
  99 +BuildRequires: sed
101 100  
102 101 %description
103 102 GTK-based IBM 3270 terminal emulator with many advanced features. It can be used to communicate with any IBM host that supports 3270-style connections over TELNET.
104 103  
105 104 Based on the original x3270 code, pw3270 was originally created for Banco do Brasil, and is now used worldwide.
106 105  
107   -#--[ Configuration & Branding ]---------------------------------------------------------------------------------------
108 106  
  107 +#--[ Configuration & Branding ]---------------------------------------------------------------------------------------
109 108 %package branding
110   -Summary: Default branding for %{name}
111   -Group: System/X11/Terminals
  109 +Summary: Default branding for %{name}
  110 +Group: System/X11/Terminals
112 111  
113   -Requires: %{name} = %{version}
114   -BuildArch: noarch
  112 +Requires: %{name} = %{version}
  113 +BuildArch: noarch
115 114  
116   -Requires(post): desktop-file-utils
117   -Requires(postun): desktop-file-utils
  115 +Requires(post): desktop-file-utils
  116 +Requires(postun):desktop-file-utils
118 117  
119 118 %description branding
120 119 GTK-based IBM 3270 terminal emulator with many advanced features. It can be used to communicate with any IBM host that supports 3270-style connections over TELNET.
121 120  
122 121 This package contains the default branding for %{name}.
123 122  
124   -#---[ Build & Install ]-----------------------------------------------------------------------------------------------
125 123  
  124 +#---[ Build & Install ]-----------------------------------------------------------------------------------------------
126 125 %prep
127 126 %setup
128 127  
129 128 %global _lto_cflags %{_lto_cflags} -ffat-lto-objects
130 129 NOCONFIGURE=1 ./autogen.sh
131 130  
  131 +# Pull request #20 broke SLE-12 builds
  132 +update_for_compatibility() {
  133 + sed -i -e "s|<id>@APPLICATION_ID@|<id>@APPLICATION_ID@.desktop|" branding/metainfo.xml.in
  134 + sed -i -e "s|<component type=\"desktop-application\">|<component type=\"desktop\">|" branding/metainfo.xml.in
  135 +}
  136 +
  137 +%if 0%{?suse_version}
  138 + %if 0%{?suse_version} < 1500
  139 + update_for_compatibility
  140 + %endif
  141 +%endif
  142 +
  143 +%if 0%{?fedora}
  144 + %if 0%{?fedora_version} < 27
  145 + update_for_compatibility
  146 + %endif
  147 +%endif
  148 +
132 149 %configure --with-release=%{release} CFLAGS="${CFLAGS} -fpie" LDFLAGS="${LDFLAGS} -pie"
133 150  
134 151 %build
... ... @@ -153,7 +170,6 @@ appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.metainf
153 170  
154 171 # Main application
155 172 %dir %{_datadir}/%{_product}
156   -%dir %{_datadir}/%{_product}/ui
157 173 %dir %{_datadir}/%{_product}/keypad
158 174 %dir %{_libdir}/%{_product}-plugins
159 175 %dir %{_datadir}/%{_product}/icons
... ... @@ -162,6 +178,11 @@ appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.metainf
162 178  
163 179 # Desktop files
164 180 %{_datadir}/applications/*.desktop
  181 +
  182 +%if 0%{?suse_version} < 1500
  183 +%dir %{_datadir}/metainfo
  184 +%endif
  185 +
165 186 %{_datadir}/metainfo/*.metainfo.xml
166 187  
167 188 # Icons
... ... @@ -173,10 +194,11 @@ appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.metainf
173 194 # Configuration & Themes
174 195 %{_datadir}/glib-2.0/schemas/*.xml
175 196 %{_datadir}/mime/packages/*.xml
  197 +%exclude %{_datadir}/glib-2.0/schemas/*.compiled
176 198  
177 199 %files branding
178 200 %defattr(-,root,root)
179   -%{_datadir}/%{_product}/ui/*
  201 +%{_datadir}/%{_product}/*.ui.xml
180 202 %{_datadir}/%{_product}/*.svg
181 203  
182 204 %posttrans
... ...
schemas/macos/application.gschema.xml.in 0 → 100644
... ... @@ -0,0 +1,87 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  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 +
  24 + Contatos:
  25 +
  26 + perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
  27 + erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
  28 +
  29 +-->
  30 +
  31 +<schemalist>
  32 +
  33 + <schema path="/br/com/bb/@PRODUCT_NAME@/" id="br.com.bb.@PRODUCT_NAME@">
  34 +
  35 + <key name="ui-style" type="u">
  36 + <default>2</default>
  37 + <summary>UI Style</summary>
  38 + <description>The ID of the current user interface style</description>
  39 + </key>
  40 +
  41 +
  42 + <key name="allow-host-settings" type="b">
  43 + <default>true</default>
  44 + <summary>Allow host settings</summary>
  45 + <description>Allow changing of host session properties</description>
  46 + </key>
  47 +
  48 + <key name="allow-open-session-actions" type="b">
  49 + <default>true</default>
  50 + <summary>Enable open session actions actions</summary>
  51 + <description>Enable open session actions</description>
  52 + </key>
  53 +
  54 + <key name="allow-new-tab-actions" type="b">
  55 + <default>true</default>
  56 + <summary>Enable new tab actions</summary>
  57 + <description>Enable new tab actions</description>
  58 + </key>
  59 +
  60 + <key name="allow-new-window-actions" type="b">
  61 + <default>true</default>
  62 + <summary>Enable new window actions</summary>
  63 + <description>Enable new window actions</description>
  64 + </key>
  65 +
  66 + <key name="default-session-file" type="s">
  67 + <default>'~/.config/default.3270'</default>
  68 + <summary>Path of the default session file</summary>
  69 + <description></description>
  70 + </key>
  71 +
  72 + <key name="update-default-session-file" type="b">
  73 + <default>false</default>
  74 + <summary>Update default session time from command line</summary>
  75 + <description></description>
  76 + </key>
  77 +
  78 + <key name="add-session-to-recent-manager" type="b">
  79 + <default>true</default>
  80 + <summary>Add session file to recent file list</summary>
  81 + <description></description>
  82 + </key>
  83 +
  84 + </schema>
  85 +
  86 +</schemalist>
  87 +
... ...
schemas/macos/window.gschema.xml.in 0 → 100644
... ... @@ -0,0 +1,121 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  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 +
  24 + Contatos:
  25 +
  26 + perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
  27 + erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
  28 +
  29 +-->
  30 +
  31 +<schemalist>
  32 +
  33 + <schema path="/br/com/bb/@PRODUCT_NAME@/window/" id="br.com.bb.@PRODUCT_NAME@.window">
  34 +
  35 + <key name="width" type="i">
  36 + <default>-1</default>
  37 + <summary>The window width.</summary>
  38 + <description></description>
  39 + </key>
  40 +
  41 + <key name="height" type="i">
  42 + <default>-1</default>
  43 + <summary>The window height.</summary>
  44 + <description></description>
  45 + </key>
  46 +
  47 + <key name="is-maximized" type="b">
  48 + <default>false</default>
  49 + <summary>Is the window maximized?</summary>
  50 + <description></description>
  51 + </key>
  52 +
  53 + <key name="is-fullscreen" type="b">
  54 + <default>false</default>
  55 + <summary>Is the window in full screen mode?</summary>
  56 + <description></description>
  57 + </key>
  58 +
  59 + <key name="has-subtitle" type="b">
  60 + <default>false</default>
  61 + <summary>Enable top window subtitle</summary>
  62 + <description>If TRUE, reserve space for a subtitle, even if none is currently set.</description>
  63 + </key>
  64 +
  65 + <key name="toolbar-visible" type="b">
  66 + <default>false</default>
  67 + <summary>The toolbar visible state</summary>
  68 + <description></description>
  69 + </key>
  70 +
  71 + <key name="toolbar-style" type="i">
  72 + <default>-1</default>
  73 + <summary>How to draw the toolbar.</summary>
  74 + <description></description>
  75 + </key>
  76 +
  77 + <key name="toolbar-icon-size" type="i">
  78 + <default>0</default>
  79 + <summary>The size of the toolbar icons</summary>
  80 + <description></description>
  81 + </key>
  82 +
  83 + <key name="toolbar-icon-type" type="i">
  84 + <default>0</default>
  85 + <summary>Use symbolic icons on toolbar</summary>
  86 + <description></description>
  87 + </key>
  88 +
  89 + <key name="header-icon-type" type="i">
  90 + <default>0</default>
  91 + <summary>Use symbolic icons on title bar</summary>
  92 + <description></description>
  93 + </key>
  94 +
  95 + <key name="toolbar-position" type="i">
  96 + <default>0</default>
  97 + <summary>The toolbar position</summary>
  98 + <description></description>
  99 + </key>
  100 +
  101 + <key name="toolbar-action-names" type="s">
  102 + <default>'win.copy,win.paste,win.select-all,separator,win.clear,win.erase-input,separator,win.print,separator,win.zoom-out,win.zoom-fit-best,win.zoom-in'</default>
  103 + <summary>The toolbar action list</summary>
  104 + <description></description>
  105 + </key>
  106 +
  107 + <key name="header-action-names" type="s">
  108 + <default>'app.tab.new:menu.open-menu,win.disconnect,win.reconnect'</default>
  109 + <summary>The title bar action list</summary>
  110 + <description></description>
  111 + </key>
  112 +
  113 + <key name="default-session-file" type="s">
  114 + <default>''</default>
  115 + <summary>Path of the default session file</summary>
  116 + <description></description>
  117 + </key>
  118 +
  119 + </schema>
  120 +
  121 +</schemalist>
... ...
src/main/windows/app-manifest.xml.in 0 → 100644
... ... @@ -0,0 +1,17 @@
  1 +<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  2 +<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  3 + <assemblyIdentity
  4 + version="@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.@PACKAGE_MAJOR_RELEASE@.@PACKAGE_MINOR_RELEASE@"
  5 + processorArchitecture="*"
  6 + name="br.com.bb.@PRODUCT_NAME@"
  7 + type="win32"
  8 + />
  9 + <description>@PACKAGE_DESCRIPTION@</description>
  10 + <application>
  11 + <windowsSettings>
  12 + <activeCodePage xmlns="http://schemas.microsoft.com/SMI/2019/WindowsSettings"
  13 + >UTF-8</activeCodePage>
  14 + </windowsSettings>
  15 + </application>
  16 +</assembly>
  17 +
... ...
src/main/windows/resources.rc.in
1 1 #include <windows.h>
2 2  
  3 +#pragma code_page( 65001 ) // UTF-8
  4 +
  5 +LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
  6 +
3 7 1 ICON @PRODUCT_NAME@.ico
4 8  
  9 +CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "app-manifest.xml"
  10 +
5 11 VS_VERSION_INFO VERSIONINFO
6 12 FILEVERSION @WIN32_FILE_VERSION@
7 13 PRODUCTVERSION @PACKAGE_MAJOR_VERSION@,@PACKAGE_MINOR_VERSION@,@PACKAGE_MAJOR_RELEASE@,@PACKAGE_MINOR_RELEASE@
... ... @@ -15,7 +21,7 @@ BEGIN
15 21 VALUE "FileDescription", "@PACKAGE_DESCRIPTION@\0"
16 22 VALUE "CompanyName", "Banco do Brasil S/A.\0"
17 23 VALUE "FileVersion", "@WIN32_VERSION@\0"
18   - VALUE "LegalCopyright", "(C) 2017 Banco do Brasil S/A. All Rights ReservedVALUE "LegalCopyright", "(C) 2017 Banco do Brasil S/A. All Rights Reserved\0""
  24 + VALUE "LegalCopyright", "(C) 2017 Banco do Brasil S/A. All Rights ReservedVALUE "LegalCopyright", "(C) 2017 Banco do Brasil S/A. All Rights Reserved\0""
19 25 VALUE "OriginalFilename", "@PRODUCT_NAME@.exe\0"
20 26 VALUE "ProductName", "@PRODUCT_NAME@\0"
21 27 VALUE "ProductVersion", "@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@.@PACKAGE_MAJOR_RELEASE@.@PACKAGE_MINOR_RELEASE@\0"
... ...
src/objects/actions/save.c
... ... @@ -94,6 +94,7 @@ GtkWidget * factory(V3270SimpleAction *action, GtkWidget *terminal) {
94 94 ));
95 95  
96 96  
  97 + gtk_window_set_transient_for(GTK_WINDOW(dialog),GTK_WINDOW(gtk_widget_get_toplevel(terminal)));
97 98 gtk_window_set_modal(GTK_WINDOW(dialog),TRUE);
98 99 gtk_window_set_title(GTK_WINDOW(dialog),action->label);
99 100  
... ...
src/objects/application/actions/about.c
... ... @@ -46,6 +46,21 @@ static GtkWidget * factory(PW3270Action G_GNUC_UNUSED(*action), GtkApplication *
46 46  
47 47 // Get application logo
48 48 {
  49 + static const char * names[] = {
  50 + G_STRINGIFY(PRODUCT_NAME) "-about.svg",
  51 + G_STRINGIFY(PRODUCT_NAME) "-logo.svg",
  52 + G_STRINGIFY(PRODUCT_NAME) ".svg",
  53 + G_STRINGIFY(PRODUCT_NAME) "-logo.png",
  54 + G_STRINGIFY(PRODUCT_NAME) ".png",
  55 +
  56 + G_STRINGIFY(PACKAGE_NAME) "-about.svg",
  57 + G_STRINGIFY(PACKAGE_NAME) "-logo.svg",
  58 + G_STRINGIFY(PACKAGE_NAME) ".svg",
  59 + G_STRINGIFY(PACKAGE_NAME) "-logo.png",
  60 + G_STRINGIFY(PACKAGE_NAME) ".png",
  61 + };
  62 +
  63 + /*
49 64 #ifdef DEBUG
50 65 static const char * logo = "./branding/" G_STRINGIFY(PRODUCT_NAME) "-logo.svg";
51 66 static const char * icon = "./branding/" G_STRINGIFY(PRODUCT_NAME) ".svg";
... ... @@ -58,18 +73,26 @@ static GtkWidget * factory(PW3270Action G_GNUC_UNUSED(*action), GtkApplication *
58 73 logo,
59 74 icon
60 75 };
  76 + */
61 77  
62 78 size_t ix;
63 79  
64   - for(ix = 0; ix < G_N_ELEMENTS(imgs); ix++) {
  80 + for(ix = 0; ix < G_N_ELEMENTS(names); ix++) {
  81 +
  82 +#ifdef DEBUG
  83 + g_autofree gchar * filename = g_build_filename(".","branding",names[ix],NULL);
  84 + debug("Searching for '%s'",filename);
  85 +#else
  86 + lib3270_autoptr(char) filename = lib3270_build_data_filename(names[ix],NULL);
  87 +#endif // DEBUG
65 88  
66   - if(!g_file_test(imgs[ix],G_FILE_TEST_IS_REGULAR))
  89 + if(!g_file_test(filename,G_FILE_TEST_IS_REGULAR))
67 90 continue;
68 91  
69 92 GError * error = NULL;
70   - g_autoptr(GdkPixbuf) pix = gdk_pixbuf_new_from_file_at_size(imgs[ix],-1,150,&error);
  93 + g_autoptr(GdkPixbuf) pix = gdk_pixbuf_new_from_file_at_size(filename,-1,150,&error);
71 94 if(error) {
72   - g_warning("Can't load \"%s\": %s",imgs[ix],error->message);
  95 + g_warning("Can't load \"%s\": %s",filename,error->message);
73 96 g_error_free(error);
74 97 continue;
75 98 }
... ...
src/objects/application/application.c
... ... @@ -34,21 +34,6 @@ enum {
34 34  
35 35 static GParamSpec * props[NUM_PROPERTIES];
36 36  
37   -struct _pw3270ApplicationClass {
38   - GtkApplicationClass parent_class;
39   -};
40   -
41   -struct _pw3270Application {
42   - GtkApplication parent;
43   -
44   - GSettings * settings;
45   - GList * keypads;
46   - gchar * logfile;
47   - GSList * plugins; ///< @brief Handlers of the loaded plugins.
48   - PW3270_UI_STYLE ui_style;
49   -
50   -};
51   -
52 37 static void startup(GApplication * application);
53 38 static void activate(GApplication * application);
54 39 static void finalize(GObject *object);
... ... @@ -186,6 +171,7 @@ static void pw3270Application_class_init(pw3270ApplicationClass *klass) {
186 171  
187 172 }
188 173  
  174 +#ifndef __APPLE__
189 175 static gboolean on_user_interface(const gchar G_GNUC_UNUSED(*option), const gchar *value, gpointer G_GNUC_UNUSED(dunno), GError **error) {
190 176  
191 177 g_autoptr(GSettings) app_settings = pw3270_application_settings_new();
... ... @@ -230,6 +216,7 @@ static gboolean on_user_interface(const gchar G_GNUC_UNUSED(*option), const gcha
230 216 return TRUE;
231 217  
232 218 }
  219 +#endif // __APPLE__
233 220  
234 221 static gboolean on_logfile(const gchar G_GNUC_UNUSED(*option), const gchar *value, gpointer G_GNUC_UNUSED(dunno), GError G_GNUC_UNUSED(**error)) {
235 222 pw3270_application_set_log_filename(g_application_get_default(),value);
... ... @@ -239,7 +226,7 @@ static gboolean on_logfile(const gchar G_GNUC_UNUSED(*option), const gchar *valu
239 226 static void pw3270Application_init(pw3270Application *app) {
240 227  
241 228 static GOptionEntry cmd_options[] = {
242   -
  229 +#ifndef __APPLE__
243 230 {
244 231 "user-interface",
245 232 'U',
... ... @@ -249,6 +236,7 @@ static void pw3270Application_init(pw3270Application *app) {
249 236 N_( "Set the user-interface type" ),
250 237 NULL
251 238 },
  239 +#endif // __APPLE__
252 240 {
253 241 "logfile",
254 242 'l',
... ... @@ -266,41 +254,61 @@ static void pw3270Application_init(pw3270Application *app) {
266 254  
267 255 g_application_add_main_option_entries(G_APPLICATION(app), cmd_options);
268 256  
269   -#ifdef _WIN32
  257 + app->settings = pw3270_application_settings_new();
  258 +
  259 +#if defined(_WIN32)
  260 + //
  261 + // Setup windows UI
  262 + //
270 263 app->ui_style = PW3270_UI_STYLE_CLASSICAL;
  264 + {
  265 + // https://stackoverflow.com/questions/37035936/how-to-get-native-windows-decorations-on-gtk3-on-windows-7-and-msys2
  266 + int gtk_csd = g_settings_get_int(app->settings,"gtk-csd");
  267 + if(gtk_csd != -1) {
  268 + g_autofree gchar * env = g_strdup_printf("GTK_CSD=%d",gtk_csd);
  269 + putenv(env);
  270 + }
  271 + }
  272 +
  273 + if(app->settings) {
  274 + g_object_ref_sink(G_OBJECT(app->settings));
  275 + g_settings_bind(app->settings, "ui-style", app, "ui-style", G_SETTINGS_BIND_DEFAULT);
  276 + }
  277 +
  278 + {
  279 + lib3270_autoptr(char) plugin_path = lib3270_build_data_filename("plugins",NULL);
  280 + pw3270_load_plugins_from_path(app, plugin_path);
  281 + }
  282 +
  283 +#elif defined(__APPLE__)
  284 + //
  285 + // Setup Apple UI
  286 + //
  287 + {
  288 + lib3270_autoptr(char) plugin_path = lib3270_build_data_filename("plugins",NULL);
  289 + pw3270_load_plugins_from_path(app, plugin_path);
  290 + }
271 291 #else
  292 + //
  293 + // Setup linux UI
  294 + //
272 295 app->ui_style = PW3270_UI_STYLE_AUTOMATIC;
273   -#endif // _WIN32
274   -
275   - // Get settings
276 296 app->settings = pw3270_application_settings_new();
277   -
278   - // Bind properties
279 297 if(app->settings) {
280   -
281 298 g_object_ref_sink(G_OBJECT(app->settings));
  299 + g_settings_bind(app->settings, "ui-style", app, "ui-style", G_SETTINGS_BIND_DEFAULT);
  300 + }
  301 +
  302 + pw3270_load_plugins_from_path(app, G_STRINGIFY(LIBDIR) G_DIR_SEPARATOR_S G_STRINGIFY(PRODUCT_NAME) "-plugins");
282 303  
283   -#ifdef _WIN32
284   - {
285   - // https://stackoverflow.com/questions/37035936/how-to-get-native-windows-decorations-on-gtk3-on-windows-7-and-msys2
286   - int gtk_csd = g_settings_get_int(app->settings,"gtk-csd");
287   - if(gtk_csd != -1) {
288   - g_autofree gchar * env = g_strdup_printf("GTK_CSD=%d",gtk_csd);
289   - putenv(env);
290   - }
291   - }
292 304 #endif // _WIN32
293 305  
294   - g_settings_bind(app->settings, "ui-style", app, "ui-style", G_SETTINGS_BIND_DEFAULT);
295   - }
  306 + /*
  307 +
  308 + FIX-ME: Move to other place.
296 309  
297 310 // Get plugins.
298 311 {
299   -#ifdef _WIN32
300   - lib3270_autoptr(char) path = lib3270_build_data_filename("plugins",NULL);
301   -#else
302   - const gchar * path = G_STRINGIFY(LIBDIR) G_DIR_SEPARATOR_S G_STRINGIFY(PRODUCT_NAME) "-plugins";
303   -#endif // _WIN32
304 312  
305 313 if(g_file_test(path,G_FILE_TEST_IS_DIR)) {
306 314  
... ... @@ -349,17 +357,19 @@ static void pw3270Application_init(pw3270Application *app) {
349 357  
350 358 }
351 359  
352   - // Initialize plugins
353   - {
354   - GSList * item;
355   - void (*call)(GtkApplication *application);
356 360  
357   - for(item = app->plugins; item; item = g_slist_next(item)) {
358   - if(g_module_symbol((GModule *) item->data, "pw3270_plugin_set_application", (gpointer *) &call)) {
359   - call(GTK_APPLICATION(app));
360   - }
361   - }
  361 + }
  362 + */
  363 +
  364 + // Initialize plugins
  365 + {
  366 + GSList * item;
  367 + void (*call)(GtkApplication *application);
362 368  
  369 + for(item = app->plugins; item; item = g_slist_next(item)) {
  370 + if(g_module_symbol((GModule *) item->data, "pw3270_plugin_set_application", (gpointer *) &call)) {
  371 + call(GTK_APPLICATION(app));
  372 + }
363 373 }
364 374  
365 375 }
... ... @@ -520,6 +530,7 @@ void activate(GApplication *application) {
520 530  
521 531 void pw3270_application_set_ui_style(GApplication *app, PW3270_UI_STYLE type) {
522 532  
  533 +#ifndef __APPLE__
523 534 g_return_if_fail(PW3270_IS_APPLICATION(app));
524 535  
525 536 pw3270Application * application = PW3270_APPLICATION(app);
... ... @@ -530,12 +541,18 @@ void pw3270_application_set_ui_style(GApplication *app, PW3270_UI_STYLE type) {
530 541 application->ui_style = type;
531 542 g_object_notify_by_pspec(G_OBJECT(app), props[PROP_UI_STYLE]);
532 543  
  544 +#endif // !__APPLE
  545 +
533 546 }
534 547  
535 548 PW3270_UI_STYLE pw3270_application_get_ui_style(GApplication *app) {
536 549  
  550 +#ifdef __APPLE__
  551 + return PW3270_UI_STYLE_GNOME;
  552 +#else
537 553 g_return_val_if_fail(PW3270_IS_APPLICATION(app),PW3270_UI_STYLE_CLASSICAL);
538 554 return PW3270_APPLICATION(app)->ui_style;
  555 +#endif // __APPLE__
539 556  
540 557 }
541 558  
... ...
src/objects/application/plugins.c 0 → 100644
... ... @@ -0,0 +1,70 @@
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
  3 +/*
  4 + * Copyright (C) 2008 Banco do Brasil S.A.
  5 + *
  6 + * This program is free software: you can redistribute it and/or modify
  7 + * it under the terms of the GNU Lesser General Public License as published
  8 + * by the Free Software Foundation, either version 3 of the License, or
  9 + * (at your option) any later version.
  10 + *
  11 + * This program is distributed in the hope that it will be useful,
  12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14 + * GNU General Public License for more details.
  15 + *
  16 + * You should have received a copy of the GNU Lesser General Public License
  17 + * along with this program. If not, see <https://www.gnu.org/licenses/>.
  18 + */
  19 +
  20 +#include "private.h"
  21 +
  22 +void pw3270_load_plugins_from_path(pw3270Application *app, const char *path) {
  23 +
  24 + if(g_file_test(path,G_FILE_TEST_IS_DIR)) {
  25 +
  26 + g_message("Loading plugins from %s",path);
  27 +
  28 + GError * err = NULL;
  29 + GDir * dir = g_dir_open(path,0,&err);
  30 +
  31 + if(dir) {
  32 +
  33 + const gchar *name;
  34 + while((name = g_dir_read_name(dir)) != NULL) {
  35 +
  36 + g_autofree gchar *filename = g_build_filename(path,name,NULL);
  37 +
  38 + if(g_str_has_suffix(filename,G_MODULE_SUFFIX)) {
  39 +
  40 + g_message("Loading %s",filename);
  41 +
  42 + GModule *handle = g_module_open(filename,G_MODULE_BIND_LOCAL);
  43 +
  44 + if(handle) {
  45 +
  46 + app->plugins = g_slist_append(app->plugins,handle);
  47 +
  48 + } else {
  49 +
  50 + g_warning("Can't load %s: %s",filename,g_module_error());
  51 +
  52 + }
  53 +
  54 + }
  55 +
  56 + }
  57 +
  58 + g_dir_close(dir);
  59 + }
  60 +
  61 + if(err) {
  62 +
  63 + g_warning("Can't load plugins from %s: %s",path,err->message);
  64 + g_error_free(err);
  65 +
  66 + }
  67 +
  68 + }
  69 +
  70 +}
... ...
src/objects/application/private.h
... ... @@ -46,10 +46,32 @@
46 46 #include <lib3270.h>
47 47 #include <lib3270/log.h>
48 48  
  49 +#include <pw3270/application.h>
  50 +
  51 +struct _pw3270Application {
  52 + GtkApplication parent;
  53 +#ifndef __APPLE__
  54 + PW3270_UI_STYLE ui_style;
  55 +#endif // !__APPLE__
  56 +
  57 + GSettings * settings;
  58 + GList * keypads;
  59 + gchar * logfile;
  60 + GSList * plugins; ///< @brief Handlers of the loaded plugins.
  61 +
  62 +};
  63 +
  64 +struct _pw3270ApplicationClass {
  65 + GtkApplicationClass parent_class;
  66 +};
  67 +
  68 +
49 69 G_GNUC_INTERNAL void pw3270_application_open(GApplication * application, GFile **files, gint n_files, const gchar *hint);
50 70  
51 71 G_GNUC_INTERNAL GtkWidget * pw3270_terminal_new(const gchar *session_file);
52 72  
  73 +G_GNUC_INTERNAL void pw3270_load_plugins_from_path(pw3270Application *app, const char *path);
  74 +
53 75 // Actions
54 76 G_GNUC_INTERNAL GAction * pw3270_about_action_new();
55 77 G_GNUC_INTERNAL GAction * pw3270_preferences_action_new();
... ...
src/objects/os/linux/savedesktopicon.c
... ... @@ -105,7 +105,7 @@ static const struct _entry {
105 105  
106 106 };
107 107  
108   -GAction * pw3270_action_save_desktop_icon_new(void) {
  108 +GAction * pw3270_action_save_session_shortcut_new(void) {
109 109  
110 110 V3270SimpleAction * action = v3270_dialog_action_new(factory);
111 111  
... ... @@ -117,40 +117,6 @@ GAction * pw3270_action_save_desktop_icon_new(void) {
117 117  
118 118 }
119 119  
120   -/*
121   -static gchar * get_filename(GtkWidget *terminal) {
122   -
123   - g_autofree gchar * defname = v3270_keyfile_get_default_filename();
124   -const gchar * current = v3270_key_file_get_filename(terminal);
125   -
126   -// If is not the default name, return it.
127   -if(strcmp(defname,current)) {
128   - return g_strdup(current);
129   -}
130   -
131   -// It's the default one, create a new one on the user_config dir
132   -g_autofree gchar * config_path = v3270_key_file_get_default_path(terminal);
133   -
134   -// Use the hostname
135   -const char * hostname = lib3270_host_get_name(v3270_get_session(terminal));
136   -if(!hostname) {
137   - hostname = G_STRINGIFY(PRODUCT_NAME);
138   -}
139   -
140   -// Build the filename
141   -gchar *filename = g_strconcat(config_path,G_DIR_SEPARATOR_S,hostname,".3270",NULL);
142   -
143   -unsigned int index = 0;
144   -while(g_file_test(filename,G_FILE_TEST_EXISTS)) {
145   - g_free(filename);
146   - filename = g_strdup_printf("%s" G_DIR_SEPARATOR_S "%s.%u.3270",config_path,hostname,++index);
147   -}
148   -
149   -return filename;
150   -
151   -}
152   -*/
153   -
154 120 GtkWidget * factory(V3270SimpleAction *action, GtkWidget *terminal) {
155 121  
156 122 size_t ix;
... ...
src/objects/os/macos/open.c 0 → 100644
... ... @@ -0,0 +1,163 @@
  1 +/*
  2 + * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
  3 + * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
  4 + * aplicativos mainframe. Registro no INPI sob o nome G3270.
  5 + *
  6 + * Copyright (C) <2008> <Banco do Brasil S.A.>
  7 + *
  8 + * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
  9 + * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
  10 + * Free Software Foundation.
  11 + *
  12 + * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
  13 + * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
  14 + * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
  15 + * obter mais detalhes.
  16 + *
  17 + * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
  18 + * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
  19 + * St, Fifth Floor, Boston, MA 02110-1301 USA
  20 + *
  21 + * Este programa está nomeado como - e possui - linhas de código.
  22 + *
  23 + * Contatos:
  24 + *
  25 + * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
  26 + * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
  27 + *
  28 + */
  29 +
  30 +#include <config.h>
  31 +
  32 +#include <lib3270.h>
  33 +#include <lib3270/log.h>
  34 +#include <pw3270/application.h>
  35 +#include <pw3270/window.h>
  36 +#include <v3270.h>
  37 +#include <v3270/keyfile.h>
  38 +
  39 +static gchar * v3270_keyfile_find(const gchar *name) {
  40 + //
  41 + // It can be a session file, scans for it
  42 + //
  43 + const gchar * paths[] = {
  44 + g_get_user_special_dir(G_USER_DIRECTORY_DOCUMENTS),
  45 + g_get_user_config_dir()
  46 + };
  47 +
  48 + static const gchar *subdirs[] = {
  49 + "3270",
  50 + G_STRINGIFY(PRODUCT_NAME),
  51 + PACKAGE_NAME
  52 + };
  53 +
  54 + size_t path, subdir;
  55 +
  56 + g_autofree gchar * filename = g_strconcat(name,".3270",NULL);
  57 +
  58 + for(path = 0; path < G_N_ELEMENTS(paths); path++) {
  59 +
  60 + // Try subdirs.
  61 + for(subdir = 0; subdir < G_N_ELEMENTS(subdirs); subdir++) {
  62 +
  63 + gchar * fullpath = g_build_filename(paths[path],subdirs[subdir],filename,NULL);
  64 +
  65 + debug("Searching for \"%s\"",fullpath);
  66 +
  67 + if(g_file_test(fullpath,G_FILE_TEST_IS_REGULAR)) {
  68 + return fullpath;
  69 + }
  70 + g_free(fullpath);
  71 +
  72 + }
  73 +
  74 + // Try path.
  75 + {
  76 + gchar * fullpath = g_build_filename(paths[path],filename,NULL);
  77 +
  78 + debug("Searching for \"%s\"",fullpath);
  79 +
  80 + if(g_file_test(fullpath,G_FILE_TEST_IS_REGULAR)) {
  81 + return fullpath;
  82 + }
  83 + g_free(fullpath);
  84 + }
  85 +
  86 + }
  87 +
  88 + return NULL;
  89 +
  90 +}
  91 +
  92 +/// @brief Open session file
  93 +static void open(GtkApplication *application, GtkWindow **window, const gchar *filename) {
  94 +
  95 + g_message("Opening '%s'",filename);
  96 +
  97 + if(*window) {
  98 +
  99 + // Already open a window, open in new tab.
  100 + pw3270_application_window_new_tab(GTK_WIDGET(*window), filename);
  101 +
  102 + } else {
  103 + // It's a new window
  104 + *window = GTK_WINDOW(pw3270_application_window_new(application, filename));
  105 +
  106 + }
  107 +
  108 +}
  109 +
  110 +void pw3270_application_open_file(GtkApplication *application, GtkWindow **window, GFile *file) {
  111 +
  112 + g_autofree gchar * scheme = g_file_get_uri_scheme(file);
  113 +
  114 + if(g_ascii_strcasecmp(scheme,"file") == 0) {
  115 +
  116 + // It's a file scheme.
  117 + if(g_file_query_exists(file,NULL)) {
  118 +
  119 + // The file exists, load it.
  120 + g_autofree gchar *filename = g_file_get_path(file);
  121 + open(application,window,filename);
  122 +
  123 + } else {
  124 +
  125 + // Search for file.
  126 + g_autofree gchar * basename = g_file_get_basename(file);
  127 + g_autofree gchar * filename = v3270_keyfile_find(basename);
  128 +
  129 + if(filename) {
  130 + open(application,window,filename);
  131 + } else {
  132 + g_warning("Cant find session '%s'",basename);
  133 + }
  134 +
  135 + }
  136 +
  137 + } else if(g_ascii_strcasecmp(scheme,"tn3270") == 0 || g_ascii_strcasecmp(scheme,"tn3270s") == 0) {
  138 +
  139 + g_autofree gchar * uri = g_file_get_uri(file);
  140 + size_t sz = strlen(uri);
  141 +
  142 + if(sz > 0 && uri[sz-1] == '/')
  143 + uri[sz-1] = 0;
  144 +
  145 + g_message("Opening '%s' with default settings",uri);
  146 +
  147 + if(!*window) {
  148 + *window = GTK_WINDOW(pw3270_application_window_new(application, NULL));
  149 + } else {
  150 + pw3270_application_window_new_tab(GTK_WIDGET(*window), NULL);
  151 + }
  152 +
  153 + GtkWidget * terminal = pw3270_application_window_get_active_terminal(GTK_WIDGET(*window));
  154 + v3270_set_default_session(terminal);
  155 + v3270_set_url(terminal,uri);
  156 +
  157 + } else {
  158 +
  159 + g_warning("Don't know how to handle '%s' scheme",scheme);
  160 +
  161 + }
  162 +
  163 +}
... ...
src/objects/os/macos/savedesktopicon.c 0 → 100644
... ... @@ -0,0 +1,80 @@
  1 +/*
  2 + * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
  3 + * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
  4 + * aplicativos mainframe. Registro no INPI sob o nome G3270.
  5 + *
  6 + * Copyright (C) <2008> <Banco do Brasil S.A.>
  7 + *
  8 + * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
  9 + * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
  10 + * Free Software Foundation.
  11 + *
  12 + * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
  13 + * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
  14 + * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
  15 + * obter mais detalhes.
  16 + *
  17 + * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
  18 + * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
  19 + * St, Fifth Floor, Boston, MA 02110-1301 USA
  20 + *
  21 + * Este programa está nomeado como - e possui - linhas de código.
  22 + *
  23 + * Contatos:
  24 + *
  25 + * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
  26 + * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
  27 + *
  28 + */
  29 +
  30 +/**
  31 + * @brief Implement MacOS version of the save desktop icon action.
  32 + *
  33 + */
  34 +
  35 +#include <v3270.h>
  36 +#include <pw3270.h>
  37 +#include <pw3270/application.h>
  38 +#include <v3270/actions.h>
  39 +#include <v3270/keyfile.h>
  40 +#include <v3270/settings.h>
  41 +#include <lib3270.h>
  42 +#include <lib3270/log.h>
  43 +#include <lib3270/properties.h>
  44 +#include <v3270/tools.h>
  45 +
  46 +static GtkWidget * factory(V3270SimpleAction *action, GtkWidget *terminal);
  47 +
  48 +GAction * pw3270_action_save_session_shortcut_new(void) {
  49 +
  50 + V3270SimpleAction * action = v3270_dialog_action_new(factory);
  51 +
  52 + action->name = "save.launcher";
  53 + action->label = _("Save session shortcut");
  54 + action->tooltip = _("Create shortcut for the current session");
  55 +
  56 + return G_ACTION(action);
  57 +
  58 +}
  59 +
  60 +GtkWidget * factory(V3270SimpleAction *action, GtkWidget *terminal) {
  61 +
  62 + GtkWidget * dialog =
  63 + gtk_message_dialog_new(
  64 + GTK_WINDOW(gtk_widget_get_toplevel(terminal)),
  65 + GTK_DIALOG_MODAL|GTK_DIALOG_DESTROY_WITH_PARENT,
  66 + GTK_MESSAGE_ERROR,
  67 + GTK_BUTTONS_OK,
  68 + _("This action is not available in this platform")
  69 + );
  70 +
  71 + g_signal_connect(dialog,"close",G_CALLBACK(gtk_widget_destroy),NULL);
  72 + g_signal_connect(dialog,"response",G_CALLBACK(gtk_widget_destroy),NULL);
  73 +
  74 + return dialog;
  75 +}
  76 +
  77 +static void apply(GtkWidget *dialog, GtkWidget *terminal) {
  78 +
  79 +}
  80 +
... ...
src/objects/os/windows/savedesktopicon.c
... ... @@ -98,7 +98,7 @@ static const struct _entry {
98 98  
99 99 };
100 100  
101   -GAction * pw3270_action_save_desktop_icon_new(void) {
  101 +GAction * pw3270_action_save_session_shortcut_new(void) {
102 102  
103 103 V3270SimpleAction * action = v3270_dialog_action_new(factory);
104 104  
... ...
src/objects/window/private.h
... ... @@ -91,7 +91,7 @@ G_GNUC_INTERNAL GAction * pw3270_file_transfer_action_new(void);
91 91 G_GNUC_INTERNAL GAction * pw3270_action_window_close_new(void);
92 92 G_GNUC_INTERNAL GAction * pw3270_action_connect_new(void);
93 93 G_GNUC_INTERNAL GAction * pw3270_action_save_session_preferences_new(void);
94   -G_GNUC_INTERNAL GAction * pw3270_action_save_desktop_icon_new(void);
  94 +G_GNUC_INTERNAL GAction * pw3270_action_save_session_shortcut_new(void);
95 95  
96 96 GAction * pw3270_action_session_properties_new(void);
97 97  
... ...
src/objects/window/window.c
... ... @@ -501,22 +501,18 @@ static void pw3270ApplicationWindow_init(pw3270ApplicationWindow *widget) {
501 501 size_t ix;
502 502  
503 503 GAction * actions[] = {
504   -// pw3270_action_host_properties_new(),
505 504 pw3270_action_session_properties_new(),
506   -// pw3270_set_color_action_new(),
507   -
508 505 pw3270_action_save_session_preferences_new(),
509   -
510 506 pw3270_file_transfer_action_new(),
511   -
512 507 pw3270_action_window_close_new(),
513   -
514 508 pw3270_action_connect_new(),
515 509  
516 510 v3270_pfkey_action_new(),
517 511 v3270_pakey_action_new(),
518 512  
519   - pw3270_action_save_desktop_icon_new(),
  513 +#ifndef __APPLE__
  514 + pw3270_action_save_session_shortcut_new(),
  515 +#endif // __APPLE__
520 516  
521 517 };
522 518  
... ... @@ -535,10 +531,14 @@ static void pw3270ApplicationWindow_init(pw3270ApplicationWindow *widget) {
535 531 //
536 532 // Bind properties
537 533 //
  534 +#ifdef __APPLE__
  535 + gtk_application_window_set_show_menubar(GTK_APPLICATION_WINDOW(widget),TRUE);
  536 +#else
538 537 g_action_map_add_action(
539 538 G_ACTION_MAP(widget),
540 539 G_ACTION(g_property_action_new("menubar", widget, "show-menubar"))
541 540 );
  541 +#endif // !__APPLE__
542 542  
543 543 g_settings_bind(
544 544 settings,
... ... @@ -639,15 +639,19 @@ GtkWidget * pw3270_application_window_new(GtkApplication * application, const gc
639 639 #endif // DEBUG
640 640  
641 641 if(style == PW3270_UI_STYLE_AUTOMATIC) {
642   -
643   -#ifdef G_OS_UNIX
  642 +#if defined(__APPLE__)
  643 + style = PW3270_UI_STYLE_GNOME;
  644 + g_settings_set_int(settings,"header-icon-type",1);
  645 +#elif defined( G_OS_UNIX )
644 646 style = PW3270_UI_STYLE_GNOME;
645 647 g_settings_set_boolean(settings,"menubar-visible",FALSE);
646 648 g_settings_set_int(settings,"header-icon-type",1);
647   -#else
  649 +#elif defined( G_OS_WIN32 )
648 650 style = PW3270_UI_STYLE_CLASSICAL;
649 651 g_settings_set_boolean(settings,"menubar-visible",TRUE);
650 652 g_settings_set_int(settings,"header-icon-type",0);
  653 +#else
  654 + #error Unsupported platform
651 655 #endif // G_OS_UNIX
652 656  
653 657 g_settings_set_boolean(settings,"toolbar-visible",TRUE);
... ... @@ -691,6 +695,7 @@ GtkWidget * pw3270_application_window_new(GtkApplication * application, const gc
691 695  
692 696 }
693 697  
  698 +#ifndef __APPLE__
694 699 g_settings_bind(
695 700 settings,
696 701 "menubar-visible",
... ... @@ -698,6 +703,7 @@ GtkWidget * pw3270_application_window_new(GtkApplication * application, const gc
698 703 "show-menubar",
699 704 G_SETTINGS_BIND_DEFAULT
700 705 );
  706 +#endif // !__APPLE__
701 707  
702 708 }
703 709  
... ...
ui/macos.ui.xml 0 → 100644
... ... @@ -0,0 +1,1126 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  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 +
  24 + Contatos:
  25 +
  26 + perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
  27 + erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
  28 +
  29 +-->
  30 +<interface>
  31 + <requires lib="gtk+" version="3.0"/>
  32 +
  33 + <menu id="app-menu">
  34 +
  35 + <submenu id="help-menu-placeholder">
  36 +
  37 + <attribute name='label' translatable='yes'>Help</attribute>
  38 +
  39 + <item>
  40 + <attribute name="label" translatable="yes">About PW3270</attribute>
  41 + <attribute name="action">app.about</attribute>
  42 + </item>
  43 +
  44 + </submenu>
  45 +
  46 + <submenu>
  47 +
  48 + <attribute name='label' translatable='yes'>Session</attribute>
  49 +
  50 + <item>
  51 + <attribute name="label" translatable="yes">Open in New Window</attribute>
  52 + <attribute name="action">app.open.session.window</attribute>
  53 + </item>
  54 +
  55 + <item>
  56 + <attribute name="label" translatable="yes">Open in New Tab</attribute>
  57 + <attribute name="action">app.open.session.tab</attribute>
  58 + </item>
  59 +
  60 + </submenu>
  61 +
  62 + <submenu id="view-menu-placeholder">
  63 +
  64 + <attribute name='label' translatable='yes'>View</attribute>
  65 +
  66 + <item>
  67 + <attribute name="label" translatable="yes">Main Toolbar</attribute>
  68 + <attribute name="action">win.toolbar</attribute>
  69 + </item>
  70 +
  71 + <item>
  72 + <attribute name="label" translatable="yes">Main Menu</attribute>
  73 + <attribute name="action">win.menubar</attribute>
  74 + </item>
  75 +
  76 + <item>
  77 + <attribute name="label" translatable="yes">Session Trace</attribute>
  78 + <attribute name="action">win.trace</attribute>
  79 + </item>
  80 +
  81 + </submenu>
  82 +
  83 + <item>
  84 + <attribute name="label" translatable="yes">Application preferences</attribute>
  85 + <attribute name="action">app.preferences</attribute>
  86 + </item>
  87 +
  88 + <item>
  89 + <attribute name="label" translatable="yes">Quit</attribute>
  90 + <attribute name="action">app.quit</attribute>
  91 + </item>
  92 +
  93 + </menu>
  94 +
  95 + <menu id='menubar'>
  96 +
  97 + <submenu>
  98 +
  99 + <attribute name='label' translatable='yes'>_File</attribute>
  100 +
  101 + <submenu>
  102 +
  103 + <attribute name='label' translatable='yes'>_New</attribute>
  104 +
  105 + <item>
  106 + <attribute name="label" translatable="yes">Window with default session</attribute>
  107 + <attribute name="action">app.window.new</attribute>
  108 + </item>
  109 +
  110 + <item>
  111 + <attribute name="label" translatable="yes">Tab with default session</attribute>
  112 + <attribute name="action">app.new.tab</attribute>
  113 + </item>
  114 +
  115 + </submenu>
  116 +
  117 + <submenu>
  118 +
  119 + <attribute name='label' translatable='yes'>_Open</attribute>
  120 +
  121 + <item>
  122 + <attribute name="label" translatable="yes">Session in new window</attribute>
  123 + <attribute name="action">app.open.session.window</attribute>
  124 + </item>
  125 +
  126 + <item>
  127 + <attribute name="label" translatable="yes">Session in New Tab</attribute>
  128 + <attribute name="action">app.open.session.tab</attribute>
  129 + </item>
  130 +
  131 + </submenu>
  132 +
  133 + <submenu>
  134 +
  135 + <attribute name='label' translatable='yes'>Save</attribute>
  136 +
  137 + <section>
  138 +
  139 + <item>
  140 + <attribute name="label" translatable="yes">Current screen</attribute>
  141 + <attribute name="action">win.save-all</attribute>
  142 + </item>
  143 +
  144 + <item>
  145 + <attribute name="label" translatable="yes">Selected area</attribute>
  146 + <attribute name="action">win.save-selected</attribute>
  147 + </item>
  148 +
  149 + <item>
  150 + <attribute name="label" translatable="yes">Clipboard contents</attribute>
  151 + <attribute name="action">win.save-copy</attribute>
  152 + </item>
  153 +
  154 + </section>
  155 +
  156 + <section>
  157 +
  158 + <item>
  159 + <attribute name="label" translatable="yes">Shortcut for this session</attribute>
  160 + <attribute name="action">win.save.launcher</attribute>
  161 + </item>
  162 +
  163 + <item>
  164 + <attribute name="label" translatable="yes">Session preferences</attribute>
  165 + <attribute name="action">win.save.session.preferences</attribute>
  166 + </item>
  167 +
  168 + </section>
  169 +
  170 + </submenu>
  171 +
  172 + <submenu>
  173 +
  174 + <attribute name='label' translatable='yes'>Print</attribute>
  175 +
  176 + <item>
  177 + <attribute name="label" translatable="yes">Current Screen</attribute>
  178 + <attribute name="action">win.print-all</attribute>
  179 + </item>
  180 +
  181 + <item>
  182 + <attribute name="label" translatable="yes">Selected area</attribute>
  183 + <attribute name="action">win.print-selected</attribute>
  184 + </item>
  185 +
  186 + <item>
  187 + <attribute name="label" translatable="yes">Clipboard contents</attribute>
  188 + <attribute name="action">win.print-copy</attribute>
  189 + </item>
  190 +
  191 + </submenu>
  192 +
  193 + <section>
  194 +
  195 + <item>
  196 + <attribute name="label" translatable="yes">Send/Receive files</attribute>
  197 + <attribute name="action">win.file.transfer</attribute>
  198 + </item>
  199 +
  200 + <!-- submenu>
  201 +
  202 + <attribute name='label' translatable='yes'>Preferences</attribute>
  203 +
  204 + <item>
  205 + <attribute name="label" translatable="yes">Application</attribute>
  206 + <attribute name="action">app.preferences</attribute>
  207 + </item>
  208 +
  209 + <item>
  210 + <attribute name="label" translatable="yes">Current session</attribute>
  211 + <attribute name="action">win.session.properties</attribute>
  212 + </item>
  213 +
  214 + </submenu -->
  215 +
  216 + <item>
  217 + <attribute name="label" translatable="yes">Close window</attribute>
  218 + <attribute name="action">win.close</attribute>
  219 + </item>
  220 +
  221 + <!-- item>
  222 + <attribute name="label" translatable="yes">Quit application</attribute>
  223 + <attribute name="action">app.quit</attribute>
  224 + </item -->
  225 +
  226 + </section>
  227 +
  228 + </submenu>
  229 +
  230 + <submenu>
  231 +
  232 + <attribute name='label' translatable='yes'>_Edit</attribute>
  233 +
  234 + <section>
  235 +
  236 + <item>
  237 + <attribute name="label" translatable="yes">Copy</attribute>
  238 + <attribute name="action">win.copy</attribute>
  239 + </item>
  240 +
  241 + <item>
  242 + <attribute name="label" translatable="yes">Copy as text</attribute>
  243 + <attribute name="action">win.copy-text</attribute>
  244 + </item>
  245 +
  246 + <item>
  247 + <attribute name="label" translatable="yes">Copy as table</attribute>
  248 + <attribute name="action">win.copy-table</attribute>
  249 + </item>
  250 +
  251 + <item>
  252 + <attribute name="label" translatable="yes">Append to copy</attribute>
  253 + <attribute name="action">win.copy-append</attribute>
  254 + </item>
  255 +
  256 + <item>
  257 + <attribute name="label" translatable="yes">Cut</attribute>
  258 + <attribute name="action">win.cut</attribute>
  259 + </item>
  260 +
  261 + <item>
  262 + <attribute name="label" translatable="yes">Paste from clipboard</attribute>
  263 + <attribute name="action">win.paste</attribute>
  264 + </item>
  265 +
  266 + <item>
  267 + <attribute name="label" translatable="yes">Paste next</attribute>
  268 + <attribute name="action">win.paste-next</attribute>
  269 + </item>
  270 +
  271 + <item>
  272 + <attribute name="label" translatable="yes">Paste from text file</attribute>
  273 + <attribute name="action">win.paste-file</attribute>
  274 + </item>
  275 +
  276 + </section>
  277 +
  278 + <section>
  279 +
  280 + <item>
  281 + <attribute name="label" translatable="yes">Select all</attribute>
  282 + <attribute name="action">win.select-all</attribute>
  283 + </item>
  284 +
  285 + <item>
  286 + <attribute name="label" translatable="yes">Select Field</attribute>
  287 + <attribute name="action">win.select-field</attribute>
  288 + </item>
  289 +
  290 + <item>
  291 + <attribute name="label" translatable="yes">Unselect</attribute>
  292 + <attribute name="action">win.unselect</attribute>
  293 + </item>
  294 +
  295 + <item>
  296 + <attribute name="label" translatable="yes">Reselect</attribute>
  297 + <attribute name="action">win.reselect</attribute>
  298 + </item>
  299 +
  300 + </section>
  301 +
  302 + <section>
  303 +
  304 + <item>
  305 + <attribute name="label" translatable="yes">Clear</attribute>
  306 + <attribute name="action">win.clear</attribute>
  307 + </item>
  308 +
  309 + <item>
  310 + <attribute name="label" translatable="yes">Erase input</attribute>
  311 + <attribute name="action">win.erase-input</attribute>
  312 + </item>
  313 +
  314 + <item>
  315 + <attribute name="label" translatable="yes">Delete Field</attribute>
  316 + <attribute name="action">win.delete-field</attribute>
  317 + </item>
  318 +
  319 + <item>
  320 + <attribute name="label" translatable="yes">Erase to end of field</attribute>
  321 + <attribute name="action">win.erase-eof</attribute>
  322 + </item>
  323 +
  324 + <item>
  325 + <attribute name="label" translatable="yes">Erase to end of line</attribute>
  326 + <attribute name="action">win.erase-eol</attribute>
  327 + </item>
  328 +
  329 + </section>
  330 +
  331 + </submenu>
  332 +
  333 + <submenu id="view-menu-placeholder">
  334 +
  335 + <attribute name='label' translatable='yes'>_View</attribute>
  336 +
  337 + <item>
  338 + <attribute name="label" translatable="yes">Trace</attribute>
  339 + <attribute name="action">win.trace</attribute>
  340 + </item>
  341 +
  342 + <item>
  343 + <attribute name="label" translatable="yes">Toolbar</attribute>
  344 + <attribute name="action">win.toolbar</attribute>
  345 + </item>
  346 +
  347 + <item>
  348 + <attribute name="label" translatable="yes">Menu</attribute>
  349 + <attribute name="action">win.menubar</attribute>
  350 + </item>
  351 +
  352 + <item>
  353 + <attribute name="label" translatable="yes">Field attributes</attribute>
  354 + <attribute name="action">win.fieldattr</attribute>
  355 + </item>
  356 +
  357 + </submenu>
  358 +
  359 + <submenu>
  360 +
  361 + <attribute name='label' translatable='yes'>_Network</attribute>
  362 +
  363 + <!-- item>
  364 + <attribute name="label" translatable="yes">Host properties</attribute>
  365 + <attribute name="action">win.host.properties</attribute>
  366 + </item -->
  367 +
  368 + <item>
  369 + <attribute name="label" translatable="yes">_Connect</attribute>
  370 + <attribute name="action">win.connect</attribute>
  371 + </item>
  372 +
  373 + <item>
  374 + <attribute name="label" translatable="yes">_Disconnect</attribute>
  375 + <attribute name="action">win.disconnect</attribute>
  376 + </item>
  377 +
  378 + </submenu>
  379 +
  380 + <submenu>
  381 +
  382 + <attribute name='label' translatable='yes'>Settings</attribute>
  383 +
  384 + <item>
  385 + <attribute name="label" translatable="yes">Application</attribute>
  386 + <attribute name="action">app.preferences</attribute>
  387 + </item>
  388 +
  389 + <item>
  390 + <attribute name="label" translatable="yes">Host and Emulation settings</attribute>
  391 + <attribute name="action">win.dialog-host</attribute>
  392 + </item>
  393 +
  394 + <item>
  395 + <attribute name="label" translatable="yes">Keyboard accelerators</attribute>
  396 + <attribute name="action">win.dialog-keyboard</attribute>
  397 + </item>
  398 +
  399 + <item>
  400 + <attribute name="label" translatable="yes">Clipboard</attribute>
  401 + <attribute name="action">win.dialog-clipboard</attribute>
  402 + </item>
  403 +
  404 + <item>
  405 + <attribute name="label" translatable="yes">Terminal colors</attribute>
  406 + <attribute name="action">win.dialog-colors</attribute>
  407 + </item>
  408 +
  409 + <!-- item>
  410 + <attribute name="label" translatable="yes">Current session</attribute>
  411 + <attribute name="action">win.session.properties</attribute>
  412 + </item -->
  413 +
  414 + <submenu>
  415 +
  416 + <attribute name="label" translatable="yes">Screen size</attribute>
  417 +
  418 + <item>
  419 + <attribute name="label" translatable="yes">Model 2 - 80x24</attribute>
  420 + <attribute name="action">win.model-number</attribute>
  421 + <attribute name="target">2</attribute>
  422 + </item>
  423 + <item>
  424 + <attribute name="label" translatable="yes">Model 3 - 80x32</attribute>
  425 + <attribute name="action">win.model-number</attribute>
  426 + <attribute name="target">3</attribute>
  427 + </item>
  428 + <item>
  429 + <attribute name="label" translatable="yes">Model 4 - 80x43</attribute>
  430 + <attribute name="action">win.model-number</attribute>
  431 + <attribute name="target">4</attribute>
  432 + </item>
  433 + <item>
  434 + <attribute name="label" translatable="yes">Model 5 - 132x27</attribute>
  435 + <attribute name="action">win.model-number</attribute>
  436 + <attribute name="target">5</attribute>
  437 + </item>
  438 +
  439 + </submenu>
  440 +
  441 + <submenu id='font-select-placeholder'>
  442 + <attribute name="label" translatable="yes">Terminal font</attribute>
  443 + </submenu>
  444 +
  445 + <submenu>
  446 +
  447 + <attribute name='label' translatable='yes'>Options</attribute>
  448 +
  449 + <item>
  450 + <attribute name="label" translatable="yes">Connect on startup</attribute>
  451 + <attribute name="action">win.autoconnect</attribute>
  452 + </item>
  453 +
  454 + <item>
  455 + <attribute name="label" translatable="yes">Blinking Cursor</attribute>
  456 + <attribute name="action">win.cursorblink</attribute>
  457 + </item>
  458 +
  459 + <item>
  460 + <attribute name="label" translatable="yes">Monocase</attribute>
  461 + <attribute name="action">win.monocase</attribute>
  462 + </item>
  463 +
  464 + <item>
  465 + <attribute name="label" translatable="yes">Track Cursor</attribute>
  466 + <attribute name="action">win.cursorpos</attribute>
  467 + </item>
  468 +
  469 + <item>
  470 + <attribute name="label" translatable="yes">Full Screen</attribute>
  471 + <attribute name="action">win.fullscreen</attribute>
  472 + </item>
  473 +
  474 + <item>
  475 + <attribute name="label" translatable="yes">Cross hair cursor</attribute>
  476 + <attribute name="action">win.crosshair</attribute>
  477 + </item>
  478 +
  479 + <item>
  480 + <attribute name="label" translatable="yes">Resize on alternate screen</attribute>
  481 + <attribute name="action">win.altscreen</attribute>
  482 + </item>
  483 +
  484 + <item>
  485 + <attribute name="label" translatable="yes">Paste with left margin</attribute>
  486 + <attribute name="action">win.marginedpaste</attribute>
  487 + </item>
  488 +
  489 + <item>
  490 + <attribute name="label" translatable="yes">Blank Fill</attribute>
  491 + <attribute name="action">win.blankfill</attribute>
  492 + </item>
  493 +
  494 + <item>
  495 + <attribute name="label" translatable="yes">Select by rectangles</attribute>
  496 + <attribute name="action">win.rectselect</attribute>
  497 + </item>
  498 +
  499 + <item>
  500 + <attribute name="label" translatable="yes">Auto-Reconnect</attribute>
  501 + <attribute name="action">win.autoreconnect</attribute>
  502 + </item>
  503 +
  504 + <item>
  505 + <attribute name="label" translatable="yes">Bold</attribute>
  506 + <attribute name="action">win.bold</attribute>
  507 + </item>
  508 +
  509 + <item>
  510 + <attribute name="label" translatable="yes">Show Underline</attribute>
  511 + <attribute name="action">win.underline</attribute>
  512 + </item>
  513 +
  514 + <item>
  515 + <attribute name="label" translatable="yes">Keep selected</attribute>
  516 + <attribute name="action">win.keepselected</attribute>
  517 + </item>
  518 +
  519 + <item>
  520 + <attribute name="label" translatable="yes">Smart paste</attribute>
  521 + <attribute name="action">win.smartpaste</attribute>
  522 + </item>
  523 +
  524 + <item>
  525 + <attribute name="label" translatable="yes">Alert sound</attribute>
  526 + <attribute name="action">win.beep</attribute>
  527 + </item>
  528 +
  529 + <item>
  530 + <attribute name="label" translatable="yes">Use +/- for field navigation</attribute>
  531 + <attribute name="action">win.kpalternative</attribute>
  532 + </item>
  533 +
  534 + <item>
  535 + <attribute name="label" translatable="yes">Network keep alive</attribute>
  536 + <attribute name="action">win.keepalive</attribute>
  537 + </item>
  538 +
  539 + <item>
  540 + <attribute name="label" translatable="yes">Dynamic font spacing</attribute>
  541 + <attribute name="action">win.dynamic-font-spacing</attribute>
  542 + </item>
  543 +
  544 + </submenu>
  545 +
  546 + </submenu>
  547 +
  548 + <submenu id="help-menu-placeholder">
  549 +
  550 + <attribute name='label' translatable='yes'>Help</attribute>
  551 +
  552 + <item>
  553 + <attribute name="label" translatable="yes">About PW3270</attribute>
  554 + <attribute name="action">app.about</attribute>
  555 + </item>
  556 +
  557 + </submenu>
  558 +
  559 + </menu>
  560 +
  561 + <menu id="open-menu">
  562 +
  563 + <submenu>
  564 +
  565 + <attribute name='label' translatable='yes'>_New</attribute>
  566 +
  567 + <item>
  568 + <attribute name="label" translatable="yes">Window with default session</attribute>
  569 + <attribute name="action">app.window.new</attribute>
  570 + </item>
  571 +
  572 + <item>
  573 + <attribute name="label" translatable="yes">Tab with default session</attribute>
  574 + <attribute name="action">app.new.tab</attribute>
  575 + </item>
  576 +
  577 + </submenu>
  578 +
  579 + <submenu>
  580 +
  581 + <attribute name='label' translatable='yes'>_Open</attribute>
  582 +
  583 + <item>
  584 + <attribute name="label" translatable="yes">Session</attribute>
  585 + <attribute name="action">app.open.session</attribute>
  586 + </item>
  587 +
  588 + <item>
  589 + <attribute name="label" translatable="yes">Session in new window</attribute>
  590 + <attribute name="action">app.open.session.window</attribute>
  591 + </item>
  592 +
  593 + <item>
  594 + <attribute name="label" translatable="yes">Session in New Tab</attribute>
  595 + <attribute name="action">app.open.session.tab</attribute>
  596 + </item>
  597 +
  598 + </submenu>
  599 +
  600 + <submenu>
  601 +
  602 + <attribute name='label' translatable='yes'>Save</attribute>
  603 +
  604 + <section>
  605 +
  606 + <item>
  607 + <attribute name="label" translatable="yes">Current screen</attribute>
  608 + <attribute name="action">win.save-all</attribute>
  609 + </item>
  610 +
  611 + <item>
  612 + <attribute name="label" translatable="yes">Selected area</attribute>
  613 + <attribute name="action">win.save-selected</attribute>
  614 + </item>
  615 +
  616 + <item>
  617 + <attribute name="label" translatable="yes">Clipboard contents</attribute>
  618 + <attribute name="action">win.save-copy</attribute>
  619 + </item>
  620 +
  621 + </section>
  622 +
  623 + <section>
  624 +
  625 + <item>
  626 + <attribute name="label" translatable="yes">Shortcut for this session</attribute>
  627 + <attribute name="action">win.save.launcher</attribute>
  628 + </item>
  629 +
  630 + <item>
  631 + <attribute name="label" translatable="yes">Session preferences</attribute>
  632 + <attribute name="action">win.save.session.preferences</attribute>
  633 + </item>
  634 +
  635 + </section>
  636 +
  637 + </submenu>
  638 +
  639 + <submenu>
  640 +
  641 + <attribute name='label' translatable='yes'>Print</attribute>
  642 +
  643 + <item>
  644 + <attribute name="label" translatable="yes">Current Screen</attribute>
  645 + <attribute name="action">win.print-all</attribute>
  646 + </item>
  647 +
  648 + <item>
  649 + <attribute name="label" translatable="yes">Selected area</attribute>
  650 + <attribute name="action">win.print-selected</attribute>
  651 + </item>
  652 +
  653 + <item>
  654 + <attribute name="label" translatable="yes">Clipboard contents</attribute>
  655 + <attribute name="action">win.print-copy</attribute>
  656 + </item>
  657 +
  658 + </submenu>
  659 +
  660 + <submenu id='preferences-menu'>
  661 +
  662 + <attribute name='label' translatable='yes'>Preferences</attribute>
  663 +
  664 + <item>
  665 + <attribute name="label" translatable="yes">Application</attribute>
  666 + <attribute name="action">app.preferences</attribute>
  667 + </item>
  668 +
  669 + <item>
  670 + <attribute name="label" translatable="yes">Current session</attribute>
  671 + <attribute name="action">win.session.properties</attribute>
  672 + </item>
  673 +
  674 + </submenu>
  675 +
  676 + </menu>
  677 +
  678 + <menu id="popup-over-selected-area">
  679 +
  680 + <submenu>
  681 + <attribute name='label' translatable='yes'>_Edit</attribute>
  682 +
  683 + <section>
  684 +
  685 + <item>
  686 + <attribute name="label" translatable="yes">Copy</attribute>
  687 + <attribute name="action">win.copy</attribute>
  688 + </item>
  689 +
  690 + <item>
  691 + <attribute name="label" translatable="yes">Append to copy</attribute>
  692 + <attribute name="action">win.copy-append</attribute>
  693 + </item>
  694 +
  695 + <item>
  696 + <attribute name="label" translatable="yes">Copy as text</attribute>
  697 + <attribute name="action">win.copy-text</attribute>
  698 + </item>
  699 +
  700 + <item>
  701 + <attribute name="label" translatable="yes">Copy as table</attribute>
  702 + <attribute name="action">win.copy-table</attribute>
  703 + </item>
  704 +
  705 + <item>
  706 + <attribute name="label" translatable="yes">Copy as HTML</attribute>
  707 + <attribute name="action">win.copy-html</attribute>
  708 + </item>
  709 +
  710 + <item>
  711 + <attribute name="label" translatable="yes">Copy as image</attribute>
  712 + <attribute name="action">win.copy-pixbuff</attribute>
  713 + </item>
  714 +
  715 + <item>
  716 + <attribute name="label" translatable="yes">Cut</attribute>
  717 + <attribute name="action">win.cut</attribute>
  718 + </item>
  719 +
  720 + </section>
  721 +
  722 + <section>
  723 +
  724 + <item>
  725 + <attribute name="label" translatable="yes">Clear</attribute>
  726 + <attribute name="action">win.clear</attribute>
  727 + </item>
  728 +
  729 + <item>
  730 + <attribute name="label" translatable="yes">Erase input</attribute>
  731 + <attribute name="action">win.erase-input</attribute>
  732 + </item>
  733 +
  734 + <item>
  735 + <attribute name="label" translatable="yes">Delete Field</attribute>
  736 + <attribute name="action">win.delete-field</attribute>
  737 + </item>
  738 +
  739 + <item>
  740 + <attribute name="label" translatable="yes">Erase to end of field</attribute>
  741 + <attribute name="action">win.erase-eof</attribute>
  742 + </item>
  743 +
  744 + <item>
  745 + <attribute name="label" translatable="yes">Erase to end of line</attribute>
  746 + <attribute name="action">win.erase-eol</attribute>
  747 + </item>
  748 +
  749 + </section>
  750 +
  751 + </submenu>
  752 +
  753 + <submenu>
  754 +
  755 + <attribute name='label' translatable='yes'>Options</attribute>
  756 +
  757 + <section>
  758 +
  759 + <item>
  760 + <attribute name="label" translatable="yes">Select by rectangles</attribute>
  761 + <attribute name="action">win.rectselect</attribute>
  762 + </item>
  763 +
  764 + </section>
  765 +
  766 + <section>
  767 +
  768 + <item>
  769 + <attribute name="label" translatable="yes">Show toolbar</attribute>
  770 + <attribute name="action">win.toolbar</attribute>
  771 + </item>
  772 +
  773 + <item>
  774 + <attribute name="label" translatable="yes">Show menu</attribute>
  775 + <attribute name="action">win.menubar</attribute>
  776 + </item>
  777 +
  778 + <item>
  779 + <attribute name="label" translatable="yes">Full screen</attribute>
  780 + <attribute name="action">win.fullscreen</attribute>
  781 + </item>
  782 +
  783 + </section>
  784 +
  785 + </submenu>
  786 +
  787 + <section>
  788 +
  789 + <item>
  790 + <attribute name="label" translatable="yes">Save selected</attribute>
  791 + <attribute name="action">win.save-selected</attribute>
  792 + </item>
  793 +
  794 + <item>
  795 + <attribute name="label" translatable="yes">Print selected</attribute>
  796 + <attribute name="action">win.print-selected</attribute>
  797 + </item>
  798 +
  799 + <item>
  800 + <attribute name="label" translatable="yes">Unselect</attribute>
  801 + <attribute name="action">win.unselect</attribute>
  802 + </item>
  803 +
  804 + </section>
  805 +
  806 + <section>
  807 + <item>
  808 + <attribute name="label" translatable="yes">Disconnect</attribute>
  809 + <attribute name="action">win.disconnect</attribute>
  810 + </item>
  811 +
  812 + <item>
  813 + <attribute name="label" translatable="yes">Close window</attribute>
  814 + <attribute name="action">win.close</attribute>
  815 + </item>
  816 + </section>
  817 +
  818 + </menu>
  819 +
  820 + <menu id="popup-over-unselected-area">
  821 +
  822 + <submenu>
  823 +
  824 + <attribute name='label' translatable='yes'>_Edit</attribute>
  825 +
  826 + <section>
  827 +
  828 + <item>
  829 + <attribute name="label" translatable="yes">Paste from clipboard</attribute>
  830 + <attribute name="action">win.paste</attribute>
  831 + </item>
  832 +
  833 + <item>
  834 + <attribute name="label" translatable="yes">Paste next</attribute>
  835 + <attribute name="action">win.paste-next</attribute>
  836 + </item>
  837 +
  838 + <item>
  839 + <attribute name="label" translatable="yes">Paste from text file</attribute>
  840 + <attribute name="action">win.paste-file</attribute>
  841 + </item>
  842 +
  843 + </section>
  844 +
  845 + <section>
  846 +
  847 + <item>
  848 + <attribute name="label" translatable="yes">Select all</attribute>
  849 + <attribute name="action">win.select-all</attribute>
  850 + </item>
  851 +
  852 + <item>
  853 + <attribute name="label" translatable="yes">Select Field</attribute>
  854 + <attribute name="action">win.select-field</attribute>
  855 + </item>
  856 +
  857 + <item>
  858 + <attribute name="label" translatable="yes">Reselect</attribute>
  859 + <attribute name="action">win.reselect</attribute>
  860 + </item>
  861 +
  862 + </section>
  863 +
  864 + <section>
  865 +
  866 + <item>
  867 + <attribute name="label" translatable="yes">Clear</attribute>
  868 + <attribute name="action">win.clear</attribute>
  869 + </item>
  870 +
  871 + <item>
  872 + <attribute name="label" translatable="yes">Erase input</attribute>
  873 + <attribute name="action">win.erase-input</attribute>
  874 + </item>
  875 +
  876 + <item>
  877 + <attribute name="label" translatable="yes">Delete Field</attribute>
  878 + <attribute name="action">win.delete-field</attribute>
  879 + </item>
  880 +
  881 + <item>
  882 + <attribute name="label" translatable="yes">Erase to end of field</attribute>
  883 + <attribute name="action">win.erase-eof</attribute>
  884 + </item>
  885 +
  886 + <item>
  887 + <attribute name="label" translatable="yes">Erase to end of line</attribute>
  888 + <attribute name="action">win.erase-eol</attribute>
  889 + </item>
  890 +
  891 + </section>
  892 +
  893 + </submenu>
  894 +
  895 + <submenu>
  896 +
  897 + <attribute name='label' translatable='yes'>Options</attribute>
  898 +
  899 + <section>
  900 +
  901 + <item>
  902 + <attribute name="label" translatable="yes">Cross hair cursor</attribute>
  903 + <attribute name="action">win.crosshair</attribute>
  904 + </item>
  905 +
  906 + <item>
  907 + <attribute name="label" translatable="yes">Use +/- for field navigation</attribute>
  908 + <attribute name="action">win.kpalternative</attribute>
  909 + </item>
  910 +
  911 + <item>
  912 + <attribute name="label" translatable="yes">Resize on alternate screen</attribute>
  913 + <attribute name="action">win.altscreen</attribute>
  914 + </item>
  915 +
  916 + <item>
  917 + <attribute name="label" translatable="yes">Alert sound</attribute>
  918 + <attribute name="action">win.beep</attribute>
  919 + </item>
  920 +
  921 + </section>
  922 +
  923 + <item>
  924 + <attribute name="label" translatable="yes">Monocase</attribute>
  925 + <attribute name="action">win.monocase</attribute>
  926 + </item>
  927 +
  928 + <item>
  929 + <attribute name="label" translatable="yes">Dynamic font spacing</attribute>
  930 + <attribute name="action">win.dynamic-font-spacing</attribute>
  931 + </item>
  932 +
  933 + <section>
  934 +
  935 + <item>
  936 + <attribute name="label" translatable="yes">Smart paste</attribute>
  937 + <attribute name="action">win.smartpaste</attribute>
  938 + </item>
  939 +
  940 + <item>
  941 + <attribute name="label" translatable="yes">Paste with left margin</attribute>
  942 + <attribute name="action">win.marginedpaste</attribute>
  943 + </item>
  944 +
  945 + <item>
  946 + <attribute name="label" translatable="yes">Blank Fill</attribute>
  947 + <attribute name="action">win.blankfill</attribute>
  948 + </item>
  949 +
  950 + </section>
  951 +
  952 + <section>
  953 +
  954 + <item>
  955 + <attribute name="label" translatable="yes">Full screen</attribute>
  956 + <attribute name="action">win.fullscreen</attribute>
  957 + </item>
  958 +
  959 + </section>
  960 +
  961 + </submenu>
  962 +
  963 + <submenu id="view-when-online-placeholder">
  964 +
  965 + <attribute name='label' translatable='yes'>View</attribute>
  966 +
  967 + <item>
  968 + <attribute name="label" translatable="yes">Toolbar</attribute>
  969 + <attribute name="action">win.toolbar</attribute>
  970 + </item>
  971 +
  972 + <item>
  973 + <attribute name="label" translatable="yes">Top menu</attribute>
  974 + <attribute name="action">win.menubar</attribute>
  975 + </item>
  976 +
  977 + <item>
  978 + <attribute name="label" translatable="yes">Session Trace</attribute>
  979 + <attribute name="action">win.trace</attribute>
  980 + </item>
  981 +
  982 + </submenu>
  983 +
  984 + <section>
  985 +
  986 + <item>
  987 + <attribute name="label" translatable="yes">Save screen</attribute>
  988 + <attribute name="action">win.save-all</attribute>
  989 + </item>
  990 +
  991 + <item>
  992 + <attribute name="label" translatable="yes">Print screen</attribute>
  993 + <attribute name="action">win.print-all</attribute>
  994 + </item>
  995 +
  996 + <item>
  997 + <attribute name="label" translatable="yes">Send/Receive files</attribute>
  998 + <attribute name="action">win.file.transfer</attribute>
  999 + </item>
  1000 +
  1001 + </section>
  1002 +
  1003 + <section>
  1004 +
  1005 + <item>
  1006 + <attribute name="label" translatable="yes">Disconnect</attribute>
  1007 + <attribute name="action">win.disconnect</attribute>
  1008 + </item>
  1009 +
  1010 + <item>
  1011 + <attribute name="label" translatable="yes">Close window</attribute>
  1012 + <attribute name="action">win.close</attribute>
  1013 + </item>
  1014 +
  1015 + </section>
  1016 +
  1017 + </menu>
  1018 +
  1019 + <menu id="popup-over-oia">
  1020 +
  1021 + <item>
  1022 + <attribute name="label" translatable="yes">Insert</attribute>
  1023 + <attribute name="action">win.insert</attribute>
  1024 + </item>
  1025 +
  1026 + <item>
  1027 + <attribute name="label" translatable="yes">Track Cursor</attribute>
  1028 + <attribute name="action">win.cursorpos</attribute>
  1029 + </item>
  1030 +
  1031 + <item>
  1032 + <attribute name="label" translatable="yes">Alert sound</attribute>
  1033 + <attribute name="action">win.beep</attribute>
  1034 + </item>
  1035 +
  1036 + </menu>
  1037 +
  1038 + <menu id="popup-when-offline">
  1039 +
  1040 + <submenu>
  1041 +
  1042 + <attribute name='label' translatable='yes'>Options</attribute>
  1043 +
  1044 + <item>
  1045 + <attribute name="label" translatable="yes">Dynamic font spacing</attribute>
  1046 + <attribute name="action">win.dynamic-font-spacing</attribute>
  1047 + </item>
  1048 +
  1049 + <item>
  1050 + <attribute name="label" translatable="yes">Full screen</attribute>
  1051 + <attribute name="action">win.fullscreen</attribute>
  1052 + </item>
  1053 +
  1054 + <submenu>
  1055 +
  1056 + <attribute name="label" translatable="yes">Screen size</attribute>
  1057 +
  1058 + <item>
  1059 + <attribute name="label" translatable="yes">Model 2 - 80x24</attribute>
  1060 + <attribute name="action">win.model-number</attribute>
  1061 + <attribute name="target">2</attribute>
  1062 + </item>
  1063 + <item>
  1064 + <attribute name="label" translatable="yes">Model 3 - 80x32</attribute>
  1065 + <attribute name="action">win.model-number</attribute>
  1066 + <attribute name="target">3</attribute>
  1067 + </item>
  1068 + <item>
  1069 + <attribute name="label" translatable="yes">Model 4 - 80x43</attribute>
  1070 + <attribute name="action">win.model-number</attribute>
  1071 + <attribute name="target">4</attribute>
  1072 + </item>
  1073 + <item>
  1074 + <attribute name="label" translatable="yes">Model 5 - 132x27</attribute>
  1075 + <attribute name="action">win.model-number</attribute>
  1076 + <attribute name="target">5</attribute>
  1077 + </item>
  1078 +
  1079 + </submenu>
  1080 +
  1081 + </submenu>
  1082 +
  1083 + <submenu id="view-when-offline-placeholder">
  1084 +
  1085 + <attribute name='label' translatable='yes'>View</attribute>
  1086 +
  1087 + <item>
  1088 + <attribute name="label" translatable="yes">Toolbar</attribute>
  1089 + <attribute name="action">win.toolbar</attribute>
  1090 + </item>
  1091 +
  1092 + <item>
  1093 + <attribute name="label" translatable="yes">Main menu</attribute>
  1094 + <attribute name="action">win.menubar</attribute>
  1095 + </item>
  1096 +
  1097 + <item>
  1098 + <attribute name="label" translatable="yes">Session Trace</attribute>
  1099 + <attribute name="action">win.trace</attribute>
  1100 + </item>
  1101 +
  1102 + </submenu>
  1103 +
  1104 + <section>
  1105 +
  1106 + <item>
  1107 + <attribute name="label" translatable="yes">_Connect</attribute>
  1108 + <attribute name="action">win.connect</attribute>
  1109 + </item>
  1110 +
  1111 + <item>
  1112 + <attribute name="label" translatable="yes">Session preferences</attribute>
  1113 + <attribute name="action">win.session.properties</attribute>
  1114 + </item>
  1115 +
  1116 +
  1117 + <item>
  1118 + <attribute name="label" translatable="yes">Close window</attribute>
  1119 + <attribute name="action">win.close</attribute>
  1120 + </item>
  1121 +
  1122 + </section>
  1123 +
  1124 + </menu>
  1125 +
  1126 +</interface>
... ...
win/pack.sh
... ... @@ -231,6 +231,7 @@ buildLibrary()
231 231 CFLAGS="-I${WORKDIR}/build/${ARCH}/include" \
232 232 CXXFLAGS="-I${WORKDIR}/build/${ARCH}/include" \
233 233 LDFLAGS="-L${WORKDIR}/build/${ARCH}" \
  234 + CACHE_FILE=${cache} \
234 235 ${PROJECTDIR}/win/configure.${1}
235 236  
236 237 else
... ... @@ -239,6 +240,7 @@ buildLibrary()
239 240 CFLAGS="-I${WORKDIR}/build/${ARCH}/include" \
240 241 CXXFLAGS="-I${WORKDIR}/build/${ARCH}/include" \
241 242 LDFLAGS="-L${WORKDIR}/build/${ARCH}/lib" \
  243 + --cache-file=${cache} \
242 244 --host=${host} \
243 245 --prefix=${prefix} \
244 246 --with-product-name="${PRODUCT_NAME}" \
... ...
win/pw3270.nsi.in
... ... @@ -110,6 +110,7 @@ SubSection &quot;@PRODUCT_NAME@&quot; SecMain
110 110  
111 111 file "/oname=$INSTDIR\@PRODUCT_NAME@-logo.svg" "share\@PRODUCT_NAME@\@PRODUCT_NAME@-logo.svg"
112 112 file "/oname=$INSTDIR\@PRODUCT_NAME@.svg" "share\@PRODUCT_NAME@\@PRODUCT_NAME@.svg"
  113 + file "/oname=$INSTDIR\@PRODUCT_NAME@.png" "share\@PRODUCT_NAME@\@PRODUCT_NAME@.png"
113 114  
114 115 # Schema
115 116 CreateDirectory "$INSTDIR\schemas"
... ... @@ -132,8 +133,7 @@ SubSection &quot;@PRODUCT_NAME@&quot; SecMain
132 133  
133 134 # UI definition files
134 135 CreateDirectory "$INSTDIR\ui"
135   - file "/oname=$INSTDIR\ui\application.xml" "share\@PRODUCT_NAME@\ui\application.xml"
136   - file "/oname=$INSTDIR\ui\window.xml" "share\@PRODUCT_NAME@\ui\window.xml"
  136 + file "/oname=$INSTDIR\@PRODUCT_NAME@.ui.xml" "share\@PRODUCT_NAME@\@PRODUCT_NAME@.ui.xml"
137 137  
138 138 # Charset definition files
139 139 CreateDirectory "$INSTDIR\remap"
... ... @@ -178,7 +178,7 @@ SubSection &quot;@PRODUCT_NAME@&quot; SecMain
178 178 WriteRegStr HKLM "Software\@PRODUCT_NAME@" "InstallLocation" "$INSTDIR"
179 179  
180 180 # Customized options
181   - WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "autoconnect" 0x00000001
  181 + WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "autoconnect" 0x00000001
182 182 WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "blankfill" 0x00000000
183 183 WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "bold" 0x00000000
184 184 WriteRegDWORD HKLM "Software\@PRODUCT_NAME@\toggles" "keepselected" 0x00000001
... ... @@ -387,6 +387,13 @@ SectionEnd
387 387  
388 388 Function .onInit
389 389  
  390 + #---[ Check if already installed ]--------------------------------------------------------------------
  391 +
  392 + ${If} ${FileExists} "$INSTDIR\@PRODUCT_NAME@.exe"
  393 + MessageBox MB_OK|MB_ICONEXCLAMATION "@PRODUCT_NAME@ is already installed. Please uninstall it first" /SD IDOK
  394 + Abort
  395 + ${EndIf}
  396 +
390 397 #---[ Check SDK Command line option ]-----------------------------------------------------------------
391 398  
392 399 !ifdef WITHSDK
... ...