aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/fs/upload.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/fs/upload.c')
-rw-r--r--src/plugins/fs/upload.c112
1 files changed, 110 insertions, 2 deletions
diff --git a/src/plugins/fs/upload.c b/src/plugins/fs/upload.c
index 91114d11..9d3fea8d 100644
--- a/src/plugins/fs/upload.c
+++ b/src/plugins/fs/upload.c
@@ -214,20 +214,108 @@ void on_selectAlternativePreviewButton_selection_changed_fs(GtkWidget * preview,
214} 214}
215 215
216void on_metaDataDialogKeywordAddButton_clicked_fs(gpointer dummy, 216void on_metaDataDialogKeywordAddButton_clicked_fs(gpointer dummy,
217 GtkWidget * uploadButton) { 217 GtkWidget * button) {
218 handleKeywordListUpdate(metaXML, 218 handleKeywordListUpdate(metaXML,
219 "fileInformationKeywordEntry", 219 "fileInformationKeywordEntry",
220 "metaDataDialogKeywordList"); 220 "metaDataDialogKeywordList");
221} 221}
222 222
223void on_metaDataDialogMetaDataAddButton_clicked_fs(gpointer dummy, 223void on_metaDataDialogMetaDataAddButton_clicked_fs(gpointer dummy,
224 GtkWidget * uploadButton) { 224 GtkWidget * button) {
225 handleMetaDataListUpdate(metaXML, 225 handleMetaDataListUpdate(metaXML,
226 "metaDataDialogMetaTypeComboBox", 226 "metaDataDialogMetaTypeComboBox",
227 "metaDataDialogValueEntry", 227 "metaDataDialogValueEntry",
228 "metaDataDialogMetaDataList"); 228 "metaDataDialogMetaDataList");
229} 229}
230 230
231void on_metaDataDialogKeywordRemoveButton_clicked_fs(gpointer dummy,
232 GtkWidget * button) {
233 handleListRemove(metaXML,
234 "metaDataDialogKeywordList");
235}
236
237void on_metaDataDialogMetaDataRemoveButton_clicked_fs(gpointer dummy,
238 GtkWidget * button) {
239 handleListRemove(metaXML,
240 "metaDataDialogMetaDataList");
241}
242
243/**
244 * The selection of the keyword list changed.
245 * Update button status.
246 */
247static void on_keyword_list_selection_changed(gpointer signal,
248 gpointer cls) {
249 GtkTreeSelection * selection;
250 GtkWidget * button;
251
252 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(glade_xml_get_widget(metaXML,
253 "metaDataDialogKeywordList")));
254 button
255 = glade_xml_get_widget(metaXML,
256 "metaDataDialogKeywordRemoveButton");
257 gtk_widget_set_sensitive(button,
258 gtk_tree_selection_count_selected_rows(selection) > 0);
259}
260
261/**
262 * The selection of the metadata list changed.
263 * Update button status.
264 */
265static void on_metadata_list_selection_changed(gpointer signal,
266 gpointer cls) {
267 GtkTreeSelection * selection;
268 GtkWidget * button;
269
270 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(glade_xml_get_widget(metaXML,
271 "metaDataDialogMetaDataList")));
272 button
273 = glade_xml_get_widget(metaXML,
274 "metaDataDialogMetaDataRemoveButton");
275 gtk_widget_set_sensitive(button,
276 gtk_tree_selection_count_selected_rows(selection) > 0);
277}
278
279/**
280 * The user has edited the metadata entry.
281 * Update add button status.
282 */
283void on_metaDataDialogValueEntry_changed_fs(gpointer dummy2,
284 GtkWidget * searchEntry) {
285 const char * input;
286 GtkWidget * button;
287
288 input = gtk_entry_get_text(GTK_ENTRY(glade_xml_get_widget(metaXML,
289 "metaDataDialogValueEntry")));
290 if (input == NULL)
291 return;
292 button
293 = glade_xml_get_widget(metaXML,
294 "metaDataDialogMetaDataAddButton");
295 gtk_widget_set_sensitive(button,
296 strlen(input) > 0);
297}
298
299/**
300 * The user has edited the keyword entry.
301 * Update add button status.
302 */
303void on_fileInformationKeywordEntry_changed_fs(gpointer dummy2,
304 GtkWidget * searchEntry) {
305 const char * input;
306 GtkWidget * button;
307
308 input = gtk_entry_get_text(GTK_ENTRY(glade_xml_get_widget(metaXML,
309 "fileInformationKeywordEntry")));
310 if (input == NULL)
311 return;
312 button
313 = glade_xml_get_widget(metaXML,
314 "metaDataDialogKeywordAddButton");
315 gtk_widget_set_sensitive(button,
316 strlen(input) > 0);
317}
318
231void on_fsinsertuploadbutton_clicked_fs(gpointer dummy, 319void on_fsinsertuploadbutton_clicked_fs(gpointer dummy,
232 GtkWidget * uploadButton) { 320 GtkWidget * uploadButton) {
233 const char * filenamerest; 321 const char * filenamerest;
@@ -286,6 +374,26 @@ void on_fsinsertuploadbutton_clicked_fs(gpointer dummy,
286 ECRS_freeUri(keywordURI); 374 ECRS_freeUri(keywordURI);
287 createMetaTypeComboBox(metaXML, 375 createMetaTypeComboBox(metaXML,
288 "metaDataDialogMetaTypeComboBox"); 376 "metaDataDialogMetaTypeComboBox");
377
378
379 g_signal_connect_data(gtk_tree_view_get_selection(GTK_TREE_VIEW(glade_xml_get_widget(metaXML,
380 "metaDataDialogKeywordList"))),
381 "changed",
382 G_CALLBACK(&on_keyword_list_selection_changed),
383 NULL,
384 NULL,
385 0);
386 g_signal_connect_data(gtk_tree_view_get_selection(GTK_TREE_VIEW(glade_xml_get_widget(metaXML,
387 "metaDataDialogMetaDataList"))),
388 "changed",
389 G_CALLBACK(&on_metadata_list_selection_changed),
390 NULL,
391 NULL,
392 0);
393
394
395
396
289 gtk_dialog_set_default_response(GTK_DIALOG(dialog), 397 gtk_dialog_set_default_response(GTK_DIALOG(dialog),
290 GTK_RESPONSE_OK); 398 GTK_RESPONSE_OK);
291 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL) { 399 if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_CANCEL) {