Commit e5a2791d6efe18cb03adee0d249e0b355d812a57

Authored by Perry Werneck
1 parent 6ef3c964
Exists in master and in 1 other branch develop

Implementing settings popup dialog.

src/dialogs/settings/dialog.c
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
1 /* 3 /*
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. 4 + * Copyright (C) 2008 Banco do Brasil S.A.
22 * 5 *
23 - * Contatos: 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.
24 * 10 *
25 - * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)  
26 - * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça) 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.
27 * 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/>.
28 */ 18 */
29 19
30 #include "../private.h" 20 #include "../private.h"
@@ -301,6 +291,11 @@ void v3270_settings_dialog_set_terminal_widget(GtkWidget *widget, GtkWidget *ter @@ -301,6 +291,11 @@ void v3270_settings_dialog_set_terminal_widget(GtkWidget *widget, GtkWidget *ter
301 g_message("No active page on settings dialog"); 291 g_message("No active page on settings dialog");
302 } 292 }
303 293
  294 + gtk_window_set_transient_for(
  295 + GTK_WINDOW(widget),
  296 + GTK_WINDOW(gtk_widget_get_toplevel(terminal))
  297 + );
  298 +
304 } 299 }
305 300
306 void v3270_settings_dialog_set_has_subtitle(GtkWidget *widget, gboolean has_subtitle) 301 void v3270_settings_dialog_set_has_subtitle(GtkWidget *widget, gboolean has_subtitle)
@@ -332,32 +327,6 @@ void v3270_setttings_dialog_response(GtkDialog *dialog, gint response_id, GtkWid @@ -332,32 +327,6 @@ void v3270_setttings_dialog_response(GtkDialog *dialog, gint response_id, GtkWid
332 327
333 } 328 }
334 329
335 -void v3270_settings_popup_dialog(GtkWidget *widget, GtkWidget *terminal, gboolean modal)  
336 -{  
337 - g_return_if_fail(GTK_IS_V3270(terminal) && GTK_IS_V3270_SETTINGS(widget));  
338 -  
339 - GtkWidget * dialog = v3270_settings_dialog_new();  
340 - V3270Settings * settings = GTK_V3270_SETTINGS(widget);  
341 -  
342 - v3270_settings_dialog_set_has_subtitle(dialog,FALSE);  
343 -  
344 - if(settings->title)  
345 - gtk_window_set_title(GTK_WINDOW(dialog),settings->title);  
346 -  
347 - gtk_container_add(GTK_CONTAINER(dialog), widget);  
348 - gtk_dialog_set_toplevel(dialog,terminal);  
349 -  
350 - gtk_window_set_modal(GTK_WINDOW(dialog),modal);  
351 -  
352 - v3270_settings_dialog_set_terminal_widget(dialog, terminal);  
353 -  
354 - g_signal_connect(dialog,"close",G_CALLBACK(gtk_widget_destroy),NULL);  
355 - g_signal_connect(dialog,"response",G_CALLBACK(v3270_setttings_dialog_response),NULL);  
356 -  
357 - gtk_widget_show_all(dialog);  
358 -  
359 -}  
360 -  
361 GtkWidget * v3270_settings_get_edit_dialog(GtkWidget *settings, GtkWidget *terminal, gboolean modal) { 330 GtkWidget * v3270_settings_get_edit_dialog(GtkWidget *settings, GtkWidget *terminal, gboolean modal) {
362 331
363 const gchar * title = GTK_V3270_SETTINGS(settings)->title; 332 const gchar * title = GTK_V3270_SETTINGS(settings)->title;
src/dialogs/settings/host.c
@@ -588,6 +588,7 @@ LIB3270_EXPORT GtkWidget * v3270_host_select_new() @@ -588,6 +588,7 @@ LIB3270_EXPORT GtkWidget * v3270_host_select_new()
588 return v3270_host_settings_new(); 588 return v3270_host_settings_new();
589 } 589 }
590 590
  591 +/*
591 LIB3270_EXPORT void v3270_select_host(GtkWidget *widget) 592 LIB3270_EXPORT void v3270_select_host(GtkWidget *widget)
592 { 593 {
593 g_return_if_fail(GTK_IS_V3270(widget)); 594 g_return_if_fail(GTK_IS_V3270(widget));
@@ -633,6 +634,7 @@ LIB3270_EXPORT void v3270_select_host(GtkWidget *widget) @@ -633,6 +634,7 @@ LIB3270_EXPORT void v3270_select_host(GtkWidget *widget)
633 gtk_widget_destroy(dialog); 634 gtk_widget_destroy(dialog);
634 635
635 } 636 }
  637 +*/
636 638
637 static void apply(GtkWidget *w, GtkWidget *terminal) 639 static void apply(GtkWidget *w, GtkWidget *terminal)
638 { 640 {
src/dialogs/settings/popup.c 0 → 100644
@@ -0,0 +1,54 @@ @@ -0,0 +1,54 @@
  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 + #include <v3270/settings.h>
  22 + #include <v3270/tools.h>
  23 +
  24 + GtkWidget * v3270_settings_popup_dialog(GtkWidget *settings, GtkWidget *terminal, gboolean modal)
  25 + {
  26 +#ifdef DEBUG
  27 + g_message("terminal=%d settings=%d",(int) GTK_IS_V3270(terminal), (int) GTK_IS_V3270_SETTINGS(settings));
  28 +#endif // DEBUG
  29 + if( !(GTK_IS_V3270(terminal) && GTK_IS_V3270_SETTINGS(settings))) {
  30 + g_message("%s was called with invalid arguments",__FUNCTION__);
  31 + if(g_object_is_floating(settings)) {
  32 + g_object_ref_sink(settings);
  33 + }
  34 + g_object_unref(settings);
  35 + return;
  36 + }
  37 +
  38 + GtkWidget * dialog = v3270_settings_dialog_new();
  39 + v3270_settings_dialog_set_has_subtitle(dialog,FALSE);
  40 +
  41 + gtk_window_set_title(GTK_WINDOW(dialog), v3270_settings_get_title(settings));
  42 + gtk_container_add(GTK_CONTAINER(dialog), settings);
  43 +
  44 + gtk_dialog_set_toplevel(dialog,terminal);
  45 + gtk_window_set_modal(GTK_WINDOW(dialog),modal);
  46 +
  47 + v3270_settings_dialog_set_terminal_widget(dialog, terminal);
  48 +
  49 + g_signal_connect(dialog,"response",G_CALLBACK(v3270_setttings_dialog_response),NULL);
  50 + g_signal_connect(dialog,"close",G_CALLBACK(gtk_widget_destroy),NULL);
  51 +
  52 + return dialog;
  53 +
  54 + }
src/include/v3270.h
@@ -239,7 +239,7 @@ @@ -239,7 +239,7 @@
239 LIB3270_EXPORT const gchar * v3270_get_remap_filename(GtkWidget *widget); 239 LIB3270_EXPORT const gchar * v3270_get_remap_filename(GtkWidget *widget);
240 240
241 // Auxiliary widgets 241 // Auxiliary widgets
242 - LIB3270_EXPORT void v3270_select_host(GtkWidget *widget); 242 + // LIB3270_EXPORT void v3270_select_host(GtkWidget *widget);
243 243
244 // Print 244 // Print
245 LIB3270_EXPORT int v3270_print(GtkWidget *widget, GError **error); 245 LIB3270_EXPORT int v3270_print(GtkWidget *widget, GError **error);
src/include/v3270/settings.h
@@ -102,7 +102,7 @@ @@ -102,7 +102,7 @@
102 LIB3270_EXPORT const gchar * v3270_settings_get_tooltip(GtkWidget *widget); 102 LIB3270_EXPORT const gchar * v3270_settings_get_tooltip(GtkWidget *widget);
103 103
104 /// @brief Popup a settings dialog for the terminal. 104 /// @brief Popup a settings dialog for the terminal.
105 - LIB3270_EXPORT void v3270_settings_popup_dialog(GtkWidget *settings, GtkWidget *terminal, gboolean modal); 105 + LIB3270_EXPORT GtkWidget * v3270_settings_popup_dialog(GtkWidget *settings, GtkWidget *terminal, gboolean modal);
106 106
107 /// @brief Get an edit dialog for the settings widget. 107 /// @brief Get an edit dialog for the settings widget.
108 LIB3270_EXPORT GtkWidget * v3270_settings_get_edit_dialog(GtkWidget *settings, GtkWidget *terminal, gboolean modal); 108 LIB3270_EXPORT GtkWidget * v3270_settings_get_edit_dialog(GtkWidget *settings, GtkWidget *terminal, gboolean modal);
src/terminal/actions/table.c
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
1 /* 3 /*
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. 4 + * Copyright (C) 2008 Banco do Brasil S.A.
16 * 5 *
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 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.
20 * 10 *
21 - * Este programa está nomeado como properties.c 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) 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.
27 * 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/>.
28 */ 18 */
29 19
30 #include "private.h" 20 #include "private.h"
31 #include <lib3270/actions.h> 21 #include <lib3270/actions.h>
32 #include <v3270/actions.h> 22 #include <v3270/actions.h>
33 #include <v3270/selection.h> 23 #include <v3270/selection.h>
  24 + #include <v3270/settings.h>
34 #include <terminal.h> 25 #include <terminal.h>
35 26
36 -// static int fire_kp_add_action(GtkWidget *widget, const struct _v3270_action * action);  
37 -// static int fire_kp_sub_action(GtkWidget *widget, const struct _v3270_action * action);  
38 -  
39 static int fire_copy_as_html(GtkWidget *widget, const struct _v3270_action * action); 27 static int fire_copy_as_html(GtkWidget *widget, const struct _v3270_action * action);
40 static int fire_copy_as_pixbuff(GtkWidget *widget, const struct _v3270_action * action); 28 static int fire_copy_as_pixbuff(GtkWidget *widget, const struct _v3270_action * action);
  29 + static int fire_accelerators_dialog(GtkWidget *widget, const struct _v3270_action * action);
  30 + static int fire_host_dialog(GtkWidget *widget, const struct _v3270_action * action);
41 31
42 /*--[ Implement ]------------------------------------------------------------------------------------*/ 32 /*--[ Implement ]------------------------------------------------------------------------------------*/
43 33
@@ -45,7 +35,9 @@ @@ -45,7 +35,9 @@
45 35
46 static const V3270_ACTION actions[] = { 36 static const V3270_ACTION actions[] = {
47 37
  38 + //
48 // Standard Clipboard actions 39 // Standard Clipboard actions
  40 + //
49 { 41 {
50 .flags = (V3270_ACTION_FLAGS) V3270_COPY_SMART, 42 .flags = (V3270_ACTION_FLAGS) V3270_COPY_SMART,
51 .name = "copy", 43 .name = "copy",
@@ -320,6 +312,28 @@ @@ -320,6 +312,28 @@
320 312
321 }, 313 },
322 314
  315 + //
  316 + // Dialog actions
  317 + //
  318 + {
  319 + .group = LIB3270_ACTION_GROUP_NONE,
  320 + .name = "dialog-accelerators",
  321 + .label = N_("Change keyboard accelerators"),
  322 + .activate = fire_accelerators_dialog
  323 +
  324 + },
  325 +
  326 + {
  327 + .group = LIB3270_ACTION_GROUP_OFFLINE,
  328 + .name = "dialog-host",
  329 + .label = N_("Change host settings"),
  330 + .activate = fire_host_dialog
  331 +
  332 + },
  333 +
  334 + //
  335 + // Terminator
  336 + //
323 { 337 {
324 .name = NULL 338 .name = NULL
325 } 339 }
@@ -339,26 +353,71 @@ @@ -339,26 +353,71 @@
339 return 0; 353 return 0;
340 } 354 }
341 355
342 - /*  
343 - int fire_kp_add_action(GtkWidget *widget, const struct _v3270_action G_GNUC_UNUSED(* action)) { 356 + static int fire_accelerators_dialog(GtkWidget *widget, const struct _v3270_action * action) {
  357 +
  358 + /*
  359 + v3270_settings_popup_dialog(
  360 + v3270_accelerator_settings_new(),
  361 + widget,
  362 + TRUE
  363 + );
  364 + */
  365 +
  366 + return 0;
  367 + }
344 368
345 - if(v3270_get_toggle(widget,LIB3270_TOGGLE_KP_ALTERNATIVE))  
346 - return lib3270_nextfield(GTK_V3270(widget)->host); 369 + static int fire_host_dialog(GtkWidget *widget, const struct _v3270_action * action) {
347 370
348 - v3270_set_string(widget, "+"); 371 + gtk_widget_show_all(
  372 + v3270_settings_popup_dialog(
  373 + v3270_host_settings_new(),
  374 + widget,
  375 + TRUE
  376 + )
  377 + );
349 378
350 return 0; 379 return 0;
351 380
352 - } 381 + /*
  382 + GtkWidget * dialog = v3270_settings_dialog_new();
  383 + GtkWidget * settings = v3270_host_settings_new();
353 384
354 - int fire_kp_sub_action(GtkWidget *widget, const struct _v3270_action G_GNUC_UNUSED(* action)) { 385 + v3270_settings_dialog_set_has_subtitle(dialog,FALSE);
355 386
356 - if(v3270_get_toggle(widget,LIB3270_TOGGLE_KP_ALTERNATIVE))  
357 - return lib3270_previousfield(GTK_V3270(widget)->host); 387 + gtk_window_set_title(GTK_WINDOW(dialog), v3270_settings_get_title(settings));
  388 + gtk_container_add(GTK_CONTAINER(dialog), settings);
358 389
359 - v3270_set_string(widget, "-"); 390 + gtk_dialog_set_toplevel(dialog,widget);
  391 + gtk_window_set_modal(GTK_WINDOW(dialog),TRUE);
360 392
361 - return 0; 393 + v3270_settings_dialog_set_terminal_widget(dialog, widget);
  394 +
  395 + gtk_window_set_default_size(GTK_WINDOW(dialog), 700, 150);
  396 + gtk_widget_show_all(dialog);
  397 +
  398 + gboolean again = TRUE;
  399 + while(again)
  400 + {
  401 + gtk_widget_set_sensitive(dialog,TRUE);
  402 + gtk_widget_set_visible(dialog,TRUE);
  403 +
  404 + switch(gtk_dialog_run(GTK_DIALOG(dialog)))
  405 + {
  406 + case GTK_RESPONSE_APPLY:
  407 + debug("V3270HostSelectWidget::%s=%s",__FUNCTION__,"GTK_RESPONSE_APPLY");
  408 + v3270_settings_dialog_apply(dialog);
  409 + again = lib3270_reconnect(v3270_get_session(widget),0);
  410 + break;
  411 +
  412 + case GTK_RESPONSE_CANCEL:
  413 + again = FALSE;
  414 + debug("V3270HostSelectWidget::%s=%s",__FUNCTION__,"GTK_RESPONSE_CANCEL");
  415 + v3270_settings_dialog_revert(dialog);
  416 + break;
  417 + }
  418 + }
  419 +
  420 + gtk_widget_destroy(dialog);
  421 + */
362 422
363 } 423 }
364 -*/  
src/trace/exec.c
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
1 /* 3 /*
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. 4 + * Copyright (C) 2008 Banco do Brasil S.A.
16 * 5 *
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 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.
20 * 10 *
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) 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.
27 * 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/>.
28 */ 18 */
29 19
30 #include "private.h" 20 #include "private.h"
@@ -34,6 +24,7 @@ @@ -34,6 +24,7 @@
34 #include <lib3270/actions.h> 24 #include <lib3270/actions.h>
35 #include <internals.h> 25 #include <internals.h>
36 #include <v3270/selection.h> 26 #include <v3270/selection.h>
  27 + #include <v3270/actions.h>
37 28
38 static const gchar * get_word(gchar **ptr) 29 static const gchar * get_word(gchar **ptr)
39 { 30 {
@@ -308,19 +299,33 @@ @@ -308,19 +299,33 @@
308 } 299 }
309 300
310 // Check for external interpreters 301 // Check for external interpreters
311 - gboolean handled = FALSE;  
312 - gchar * args = cmdline; 302 + {
  303 + gboolean handled = FALSE;
  304 + gchar * args = cmdline;
313 305
314 - while(*args && !g_ascii_isspace(*args))  
315 - args++; 306 + while(*args && !g_ascii_isspace(*args))
  307 + args++;
316 308
317 - if(*args)  
318 - *(args++) = 0; 309 + if(*args)
  310 + *(args++) = 0;
319 311
320 - v3270_trace_signal_emit(GTK_WIDGET(t), V3270_TRACE_SIGNAL_COMMAND, cmdline, args, &handled); 312 + v3270_trace_signal_emit(GTK_WIDGET(t), V3270_TRACE_SIGNAL_COMMAND, cmdline, args, &handled);
321 313
322 - if(handled)  
323 - return 0; 314 + if(handled)
  315 + return 0;
  316 + }
  317 +
  318 + // Check for v3270 actions
  319 + {
  320 + const V3270_ACTION * action = v3270_get_actions();
  321 +
  322 + while(action->name) {
  323 + if(!g_ascii_strcasecmp(action->name,cmdline)) {
  324 + return action->activate(terminal,action);
  325 + }
  326 + action++;
  327 + }
  328 + }
324 329
325 return errno = ENOENT; 330 return errno = ENOENT;
326 } 331 }
@@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
117 <Unit filename="src/dialogs/settings/host.c"> 117 <Unit filename="src/dialogs/settings/host.c">
118 <Option compilerVar="CC" /> 118 <Option compilerVar="CC" />
119 </Unit> 119 </Unit>
  120 + <Unit filename="src/dialogs/settings/popup.c">
  121 + <Option compilerVar="CC" />
  122 + </Unit>
120 <Unit filename="src/dialogs/settings/private.h" /> 123 <Unit filename="src/dialogs/settings/private.h" />
121 <Unit filename="src/dialogs/settings/tools.c"> 124 <Unit filename="src/dialogs/settings/tools.c">
122 <Option compilerVar="CC" /> 125 <Option compilerVar="CC" />