Commit f0fc99bd9d89da26631312412b25554db1235f67

Authored by Perry Werneck
1 parent 32c52dce
Exists in master and in 1 other branch develop

Working in new FT settings dialog.

src/include/v3270/filetransfer.h
@@ -99,6 +99,7 @@ @@ -99,6 +99,7 @@
99 LIB3270_EXPORT void v3270_ft_settings_update(GtkWidget *widget); 99 LIB3270_EXPORT void v3270_ft_settings_update(GtkWidget *widget);
100 100
101 LIB3270_EXPORT void v3270_ft_settings_set_options(GtkWidget *widget, LIB3270_FT_OPTION options); 101 LIB3270_EXPORT void v3270_ft_settings_set_options(GtkWidget *widget, LIB3270_FT_OPTION options);
  102 + LIB3270_EXPORT gboolean v3270_ft_settings_equals(GtkWidget *widget, GObject *activity);
102 103
103 // FT Activity widget 104 // FT Activity widget
104 #define G_TYPE_V3270_FT_ACTIVITY (V3270FTActivity_get_type ()) 105 #define G_TYPE_V3270_FT_ACTIVITY (V3270FTActivity_get_type ())
src/v3270ft/dialog.c
@@ -124,6 +124,28 @@ static void update_clicked(GtkButton G_GNUC_UNUSED(*button), V3270FTDialog *widg @@ -124,6 +124,28 @@ static void update_clicked(GtkButton G_GNUC_UNUSED(*button), V3270FTDialog *widg
124 124
125 static void insert_clicked(GtkButton G_GNUC_UNUSED(*button), V3270FTDialog *widget) 125 static void insert_clicked(GtkButton G_GNUC_UNUSED(*button), V3270FTDialog *widget)
126 { 126 {
  127 + GtkTreeIter iter;
  128 + GtkTreeModel * model = gtk_tree_view_get_model(widget->queue);
  129 +
  130 + if(gtk_tree_model_get_iter_first(model,&iter))
  131 + {
  132 + do
  133 + {
  134 + GObject * activity = NULL;
  135 + gtk_tree_model_get(model, &iter, 0, &activity, -1);
  136 +
  137 + if(activity && v3270_ft_settings_equals(widget->settings,activity))
  138 + {
  139 + debug("%s: Activity already inserted",__FUNCTION__);
  140 + return;
  141 + }
  142 +
  143 + }
  144 + while(gtk_tree_model_iter_next(model,&iter));
  145 + }
  146 +
  147 + // Not found, insert it.
  148 +
127 } 149 }
128 150
129 static void V3270FTDialog_init(V3270FTDialog *widget) 151 static void V3270FTDialog_init(V3270FTDialog *widget)
src/v3270ft/settings.c
@@ -549,6 +549,19 @@ static void open_select_file_dialog(GtkEntry *entry, G_GNUC_UNUSED GtkEntryIconP @@ -549,6 +549,19 @@ static void open_select_file_dialog(GtkEntry *entry, G_GNUC_UNUSED GtkEntryIconP
549 549
550 } 550 }
551 551
  552 + LIB3270_EXPORT gboolean v3270_ft_settings_equals(GtkWidget *widget, GObject *activity)
  553 + {
  554 + V3270FTSettings * settings = GTK_V3270_FT_SETTINGS(widget);
  555 +
  556 + if(strcmp(gtk_entry_get_text(settings->file.local),v3270_ft_activity_get_local_filename(activity)))
  557 + return FALSE;
  558 +
  559 + if(strcmp(gtk_entry_get_text(settings->file.remote),v3270_ft_activity_get_remote_filename(activity)))
  560 + return FALSE;
  561 +
  562 + return TRUE;
  563 + }
  564 +
552 LIB3270_EXPORT void v3270_ft_settings_update(GtkWidget *widget) 565 LIB3270_EXPORT void v3270_ft_settings_update(GtkWidget *widget)
553 { 566 {
554 int ix; 567 int ix;