[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r3563 - gnunet-gtk/src/plugins/fs
From: |
grothoff |
Subject: |
[GNUnet-SVN] r3563 - gnunet-gtk/src/plugins/fs |
Date: |
Sun, 29 Oct 2006 13:57:39 -0800 (PST) |
Author: grothoff
Date: 2006-10-29 13:57:35 -0800 (Sun, 29 Oct 2006)
New Revision: 3563
Modified:
gnunet-gtk/src/plugins/fs/collection.c
gnunet-gtk/src/plugins/fs/collection.h
gnunet-gtk/src/plugins/fs/fs.c
gnunet-gtk/src/plugins/fs/fs.h
gnunet-gtk/src/plugins/fs/meta.h
gnunet-gtk/src/plugins/fs/namespace.c
gnunet-gtk/src/plugins/fs/namespace.h
gnunet-gtk/src/plugins/fs/upload.c
gnunet-gtk/src/plugins/fs/upload.h
Log:
first half of upload refactoring done
Modified: gnunet-gtk/src/plugins/fs/collection.c
===================================================================
--- gnunet-gtk/src/plugins/fs/collection.c 2006-10-29 19:52:26 UTC (rev
3562)
+++ gnunet-gtk/src/plugins/fs/collection.c 2006-10-29 21:57:35 UTC (rev
3563)
@@ -35,10 +35,6 @@
static GladeXML * metaXML;
-static struct GE_Context * ectx;
-
-static struct GC_Configuration * cfg;
-
void on_collectionDialogMetaDataAddButton_clicked_fs(gpointer dummy,
GtkWidget * uploadButton) {
handleMetaDataListUpdate(metaXML,
@@ -168,12 +164,9 @@
}
}
-void fs_collection_start(struct GE_Context * e,
- struct GC_Configuration * c) {
+void fs_collection_start() {
GtkWidget * w;
- ectx = e;
- cfg = c;
if (NULL != CO_getCollection(ectx,
cfg))
w = glade_xml_get_widget(getMainXML(),
@@ -184,8 +177,4 @@
gtk_widget_set_sensitive(w, FALSE);
}
-void fs_collection_stop() {
- /* nothing to do */
-}
-
/* end of collection.c */
Modified: gnunet-gtk/src/plugins/fs/collection.h
===================================================================
--- gnunet-gtk/src/plugins/fs/collection.h 2006-10-29 19:52:26 UTC (rev
3562)
+++ gnunet-gtk/src/plugins/fs/collection.h 2006-10-29 21:57:35 UTC (rev
3563)
@@ -29,9 +29,6 @@
#include <GNUnet/gnunet_util.h>
-void fs_collection_start(struct GE_Context * ectx,
- struct GC_Configuration * cfg);
+void fs_collection_start(void);
-void fs_collection_stop(void);
-
#endif
Modified: gnunet-gtk/src/plugins/fs/fs.c
===================================================================
--- gnunet-gtk/src/plugins/fs/fs.c 2006-10-29 19:52:26 UTC (rev 3562)
+++ gnunet-gtk/src/plugins/fs/fs.c 2006-10-29 21:57:35 UTC (rev 3563)
@@ -42,29 +42,25 @@
DownloadList * download_head;
+UploadList * upload_head;
+
GtkListStore * search_summary;
GtkTreeStore * download_summary;
-typedef struct {
- const FSUI_Event * event;
- void * ret;
-} SEP_Closure;
+GtkTreeStore * upload_summary;
-static void saveEventProcessor(void * arg) {
- SEP_Closure * cls = arg;
- const FSUI_Event * event = cls->event;
-
- cls->ret = NULL;
- DEBUG_BEGIN();
+static void * eventProcessor(void * unused,
+ const FSUI_Event * event) {
+ void * ret = NULL;
switch (event->type) {
/* search events */
case FSUI_search_started:
- cls->ret = fs_search_started(event->data.SearchStarted.sc.pos,
- event->data.SearchStarted.searchURI,
- event->data.SearchStarted.anonymityLevel,
- 0,
- NULL);
+ ret = fs_search_started(event->data.SearchStarted.sc.pos,
+ event->data.SearchStarted.searchURI,
+ event->data.SearchStarted.anonymityLevel,
+ 0,
+ NULL);
break;
case FSUI_search_result:
fs_search_result_received(event->data.SearchResult.sc.cctx,
@@ -85,11 +81,11 @@
fs_search_aborted(event->data.SearchSuspended.sc.cctx);
break;
case FSUI_search_resumed:
- cls->ret = fs_search_started(event->data.SearchResumed.sc.pos,
- event->data.SearchResumed.searchURI,
- event->data.SearchResumed.anonymityLevel,
- event->data.SearchResumed.fisSize,
- event->data.SearchResumed.fis);
+ ret = fs_search_started(event->data.SearchResumed.sc.pos,
+ event->data.SearchResumed.searchURI,
+ event->data.SearchResumed.anonymityLevel,
+ event->data.SearchResumed.fisSize,
+ event->data.SearchResumed.fis);
case FSUI_search_stopped:
fs_search_aborted(event->data.SearchError.sc.cctx);
break;
@@ -117,56 +113,68 @@
case FSUI_download_stopped:
fs_download_stopped(event->data.DownloadCompleted.dc.cctx);
break;
- case FSUI_download_started:
- cls->ret = fs_download_started(event->data.DownloadStarted.dc.pos,
- event->data.DownloadStarted.dc.pcctx,
- event->data.DownloadStarted.dc.sctx,
- event->data.DownloadStarted.total,
- event->data.DownloadStarted.anonymityLevel,
- &event->data.DownloadStarted.fi,
- event->data.DownloadStarted.filename,
- 0,
- get_time());
+ case FSUI_download_started:
+ ret = fs_download_started(event->data.DownloadStarted.dc.pos,
+ event->data.DownloadStarted.dc.pcctx,
+ event->data.DownloadStarted.dc.sctx,
+ event->data.DownloadStarted.total,
+ event->data.DownloadStarted.anonymityLevel,
+ &event->data.DownloadStarted.fi,
+ event->data.DownloadStarted.filename,
+ 0,
+ get_time());
break;
case FSUI_download_resumed:
- cls->ret = fs_download_started(event->data.DownloadResumed.dc.pos,
- event->data.DownloadStarted.dc.pcctx,
- event->data.DownloadStarted.dc.sctx,
- event->data.DownloadResumed.total,
- event->data.DownloadResumed.anonymityLevel,
- &event->data.DownloadResumed.fi,
- event->data.DownloadResumed.filename,
- event->data.DownloadResumed.completed,
- event->data.DownloadResumed.eta);
+ ret = fs_download_started(event->data.DownloadResumed.dc.pos,
+ event->data.DownloadStarted.dc.pcctx,
+ event->data.DownloadStarted.dc.sctx,
+ event->data.DownloadResumed.total,
+ event->data.DownloadResumed.anonymityLevel,
+ &event->data.DownloadResumed.fi,
+ event->data.DownloadResumed.filename,
+ event->data.DownloadResumed.completed,
+ event->data.DownloadResumed.eta);
break;
-
- /* upload */
+ /* upload events */
case FSUI_upload_progress:
- displayUploadUpdate(event->data.UploadProgress.uc.cctx,
- event->data.UploadProgress.filename,
- event->data.UploadProgress.completed,
- event->data.UploadProgress.total);
+ fs_upload_update(event->data.UploadProgress.uc.cctx,
+ event->data.UploadProgress.completed);
break;
case FSUI_upload_completed:
- displayUploadComplete(event->data.UploadCompleted.uc.cctx,
- event->data.UploadCompleted.filename,
- event->data.UploadCompleted.uri);
- addLogEntry(_("Upload `%s' complete"),
- event->data.UploadCompleted.filename);
- gnunetgtk_notify(NOTIFY_NORMAL,
- _("Upload `%s' complete"),
- event->data.UploadCompleted.filename);
+ fs_upload_complete(event->data.UploadCompleted.uc.cctx,
+ event->data.UploadCompleted.uri);
break;
case FSUI_upload_error:
- GE_LOG(ectx,
- GE_ERROR,
- _("Error while uploading: %s\n"),
- event->data.UploadError.message);
- gnunetgtk_notify(NOTIFY_NORMAL,
- _("Error while uploading `%s'"),
- event->data.UploadError.message);
+ fs_upload_error(event->data.UploadError.uc.cctx);
break;
+ case FSUI_upload_aborted:
+ fs_upload_error(event->data.UploadAborted.uc.cctx);
+ break;
+ case FSUI_upload_stopped:
+ fs_upload_stopped(event->data.UploadStopped.uc.cctx);
+ break;
+ case FSUI_upload_suspended:
+ fs_upload_stopped(event->data.UploadSuspended.uc.cctx);
+ break;
+ case FSUI_upload_started:
+ ret = fs_upload_started(event->data.UploadStarted.uc.pos,
+ event->data.UploadStarted.uc.pcctx,
+ event->data.UploadStarted.filename,
+ NULL,
+ event->data.UploadStarted.total,
+ 0);
+ break;
+ case FSUI_upload_resumed:
+ ret = fs_upload_started(event->data.UploadResumed.uc.pos,
+ event->data.UploadResumed.uc.pcctx,
+ event->data.UploadResumed.filename,
+ NULL, /* FIXME: maybe completed!? */
+ event->data.UploadResumed.total,
+ event->data.UploadResumed.completed);
+ break;
+
+ /* TODO: unindex events */
default:
GE_BREAK(ectx, 0);
GE_LOG(ectx,
@@ -175,38 +183,26 @@
event->type);
break;
}
- DEBUG_END();
+ return ret;
}
-/**
- * FSUI event handler.
- */
-static void * eventProcessor(void * unused,
- const FSUI_Event * event) {
- SEP_Closure cls;
-
- cls.event = event;
- cls.ret = NULL;
- gtkSaveCall(&saveEventProcessor,
- &cls);
- return cls.ret;
-}
-
-
/**
* Setup the summary views (in particular the models
* and the renderers).
*/
static void fs_summary_start() {
GtkComboBoxEntry * searchCB;
+ GtkWidget * uploadEntry;
GtkTreeView * searchList;
GtkTreeView * downloadList;
+ GtkTreeView * uploadList;
GtkListStore * model;
GtkCellRenderer * renderer;
GtkTreeViewColumn * column;
int col;
-
+
+ /* search namespace selection setup */
searchCB
= GTK_COMBO_BOX_ENTRY(glade_xml_get_widget(getMainXML(),
"fssearchKeywordComboBoxEntry"));
@@ -221,6 +217,8 @@
GTK_TREE_MODEL(model));
gtk_combo_box_entry_set_text_column(searchCB,
NS_SEARCH_DESCRIPTION);
+
+ /* search summary setup */
searchList = GTK_TREE_VIEW(glade_xml_get_widget(getMainXML(),
"activeSearchesSummary"));
search_summary =
@@ -262,7 +260,7 @@
gtk_tree_view_column_set_sort_column_id(column, SEARCH_SUMMARY_RESULT_COUNT);
gtk_tree_view_column_set_resizable(column, TRUE);
-
+ /* download summary setup */
downloadList = GTK_TREE_VIEW(glade_xml_get_widget(getMainXML(),
"activeDownloadsList"));
download_summary =
@@ -324,10 +322,56 @@
gtk_tree_view_column_set_reorderable(column, TRUE);
/*gtk_tree_view_column_set_sort_indicator(column, TRUE);*/
gtk_tree_view_column_set_resizable(column, TRUE);
+
+ /* upload summary setup */
+ uploadList = GTK_TREE_VIEW(glade_xml_get_widget(getMainXML(),
+ "activeUploadsList"));
+ upload_summary =
+ gtk_tree_store_new(UPLOAD_NUM,
+ G_TYPE_STRING, /* filename */
+ G_TYPE_INT, /* progress */
+ G_TYPE_STRING,
+ G_TYPE_POINTER); /* URI (as string) - after completion
*/
+ gtk_tree_view_set_model(uploadList,
+ GTK_TREE_MODEL(upload_summary));
+ gtk_tree_selection_set_mode(gtk_tree_view_get_selection(uploadList),
+ GTK_SELECTION_MULTIPLE);
+ renderer = gtk_cell_renderer_progress_new();
+ col = gtk_tree_view_insert_column_with_attributes(uploadList,
+ -1,
+ _("Filename"),
+ renderer,
+ "text", UPLOAD_FILENAME,
+ "value", UPLOAD_PROGRESS,
+ NULL);
+ gtk_tree_view_column_set_resizable(gtk_tree_view_get_column(uploadList,
+ col - 1),
+ TRUE);
+ renderer = gtk_cell_renderer_text_new();
+ col = gtk_tree_view_insert_column_with_attributes(uploadList,
+ -1,
+ _("URI"),
+ renderer,
+ "text", UPLOAD_URISTRING,
+ NULL);
+ gtk_tree_view_column_set_resizable(gtk_tree_view_get_column(uploadList,
+ col - 1),
+ TRUE);
+
+ /* upload entry setup */
+ uploadEntry
+ = glade_xml_get_widget(getMainXML(),
+ "uploadFilenameComboBoxEntry");
+
+ model = gtk_list_store_new(1, G_TYPE_STRING);
+ gtk_combo_box_set_model(GTK_COMBO_BOX(uploadEntry),
+ GTK_TREE_MODEL(model));
+ gtk_combo_box_entry_set_text_column(GTK_COMBO_BOX_ENTRY(uploadEntry),
+ 0);
}
/**
- * Shutdown.
+ * Shutdown the summary dialogs.
*/
static void fs_summary_stop() {
GtkComboBox * searchCB;
@@ -343,8 +387,6 @@
-
-
void init_fs(struct GE_Context * e,
struct GC_Configuration * c) {
GtkWidget * tab;
@@ -366,14 +408,13 @@
ctx = FSUI_start(ectx,
cfg,
"gnunet-gtk",
- 128,
+ 128, /* FIXME: allow user to configure download parallelism
*/
YES,
&eventProcessor,
NULL);
- fs_collection_start(ectx, cfg);
+ fs_collection_start();
fs_summary_start();
- fs_upload_start(ectx, cfg);
- fs_namespace_start(ectx, cfg);
+ fs_namespace_start();
}
void done_fs() {
@@ -384,9 +425,7 @@
"fsnotebook");
gtk_widget_hide(tab);
fs_summary_stop();
- fs_collection_stop();
fs_namespace_stop();
- fs_upload_stop();
FSUI_stop(ctx);
}
Modified: gnunet-gtk/src/plugins/fs/fs.h
===================================================================
--- gnunet-gtk/src/plugins/fs/fs.h 2006-10-29 19:52:26 UTC (rev 3562)
+++ gnunet-gtk/src/plugins/fs/fs.h 2006-10-29 21:57:35 UTC (rev 3563)
@@ -73,6 +73,9 @@
SEARCH_SUMMARY_NUM
};
+/**
+ * Entry in download summary.
+ */
enum {
DOWNLOAD_FILENAME = 0,
DOWNLOAD_SHORTNAME,
@@ -109,11 +112,14 @@
IN_NAMESPACE_NUM
};
-
+/**
+ * Entry in upload summary.
+ */
enum {
UPLOAD_FILENAME = 0,
UPLOAD_PROGRESS,
UPLOAD_URISTRING,
+ UPLOAD_INTERNAL,
UPLOAD_NUM
};
@@ -249,6 +255,35 @@
} DownloadList;
+typedef struct UL {
+ struct UL * next;
+
+ /**
+ * Which file or directory are we uploading?
+ */
+ char * filename;
+
+ /**
+ * Path in the summary view for this download.
+ */
+ GtkTreeRowReference * summaryViewRowReference;
+
+ struct FSUI_UploadList * fsui_list;
+
+ /**
+ * Set to final URI upon successful completion.
+ */
+ struct ECRS_URI * uri;
+
+ /**
+ * Total size of the upload.
+ */
+ unsigned long long total;
+
+ int has_terminated;
+
+} UploadList;
+
extern struct FSUI_Context * ctx;
extern struct GE_Context * ectx;
@@ -259,10 +294,12 @@
extern DownloadList * download_head;
+extern UploadList * upload_head;
+
extern GtkListStore * search_summary;
extern GtkTreeStore * download_summary;
+extern GtkTreeStore * upload_summary;
-
#endif
Modified: gnunet-gtk/src/plugins/fs/meta.h
===================================================================
--- gnunet-gtk/src/plugins/fs/meta.h 2006-10-29 19:52:26 UTC (rev 3562)
+++ gnunet-gtk/src/plugins/fs/meta.h 2006-10-29 21:57:35 UTC (rev 3563)
@@ -1,6 +1,6 @@
/*
This file is part of GNUnet.
- (C) 2005 Christian Grothoff (and other contributing authors)
+ (C) 2005, 2006 Christian Grothoff (and other contributing authors)
GNUnet is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
Modified: gnunet-gtk/src/plugins/fs/namespace.c
===================================================================
--- gnunet-gtk/src/plugins/fs/namespace.c 2006-10-29 19:52:26 UTC (rev
3562)
+++ gnunet-gtk/src/plugins/fs/namespace.c 2006-10-29 21:57:35 UTC (rev
3563)
@@ -55,10 +55,6 @@
static GladeXML * metaXML;
-static struct GE_Context * ectx;
-
-static struct GC_Configuration * cfg;
-
static GtkWidget * makeNamespaceFrame(GtkWidget ** treeview,
GtkWidget ** anonSpin) {
GtkWidget * window;
@@ -1353,8 +1349,7 @@
-void fs_namespace_start(struct GE_Context * e,
- struct GC_Configuration * c) {
+void fs_namespace_start() {
GtkWidget * contentList;
GtkListStore * model;
GtkCellRenderer * renderer;
@@ -1362,8 +1357,6 @@
GtkTreeViewColumn * column;
int col;
- ectx = e;
- cfg = c;
DEBUG_BEGIN();
trackCheckButton
= glade_xml_get_widget(getMainXML(),
@@ -1508,6 +1501,7 @@
#endif
void fs_namespace_stop() {
+ /* FIXME: free resources! */
}
/* end of namespace.c */
Modified: gnunet-gtk/src/plugins/fs/namespace.h
===================================================================
--- gnunet-gtk/src/plugins/fs/namespace.h 2006-10-29 19:52:26 UTC (rev
3562)
+++ gnunet-gtk/src/plugins/fs/namespace.h 2006-10-29 21:57:35 UTC (rev
3563)
@@ -27,11 +27,8 @@
#ifndef GTK_NAMESPACE_H
#define GTK_NAMESPACE_H
-#include <GNUnet/gnunet_util.h>
+void fs_namespace_start(void);
-void fs_namespace_start(struct GE_Context * ectx,
- struct GC_Configuration * cfg);
-
void fs_namespace_stop(void);
#endif
Modified: gnunet-gtk/src/plugins/fs/upload.c
===================================================================
--- gnunet-gtk/src/plugins/fs/upload.c 2006-10-29 19:52:26 UTC (rev 3562)
+++ gnunet-gtk/src/plugins/fs/upload.c 2006-10-29 21:57:35 UTC (rev 3563)
@@ -39,9 +39,6 @@
#endif
#endif
-
-static GtkTreeStore * summary;
-
/**
* XML tree for the meta-data dialog of upload.
* (there can only be one at a time;
@@ -49,45 +46,149 @@
*/
static GladeXML * metaXML;
-static struct GE_Context * ectx;
+/* ************ FSUI event handlers ************ */
-static struct GC_Configuration * cfg;
-
-/**
- */
-void displayUploadUpdate(struct FSUI_UploadList * list,
- const char * filename,
- unsigned long long completed,
- unsigned long long total) {
+void fs_upload_update(UploadList * list,
+ unsigned long long completed) {
+ GtkTreeIter iter;
+ GtkTreePath * path;
int progress;
- DEBUG_BEGIN();
- if (total != 0)
- progress = 100 * completed / total;
+ if (list->total != 0)
+ progress = 100 * completed / list->total;
else
progress = 100;
-
- /* FIXME! */
- DEBUG_END();
+ path = gtk_tree_row_reference_get_path(list->summaryViewRowReference);
+ gtk_tree_model_get_iter(GTK_TREE_MODEL(upload_summary),
+ &iter,
+ path);
+ gtk_tree_path_free(path);
+ gtk_tree_store_set(upload_summary,
+ &iter,
+ UPLOAD_PROGRESS, progress,
+ -1);
}
-/**
- */
-void displayUploadComplete(struct FSUI_UploadList * list,
- const char * filename,
- const struct ECRS_URI * uri) {
+void fs_upload_complete(UploadList * list,
+ struct ECRS_URI * uri) {
+ GtkTreeIter iter;
+ GtkTreePath * path;
char * us;
- DEBUG_BEGIN();
- GE_ASSERT(ectx, uri != NULL);
+ list->has_terminated = YES;
+ list->uri = ECRS_dupUri(uri);
us = ECRS_uriToString(uri);
- GE_ASSERT(ectx, us != NULL);
- /* FIXME */
+ path = gtk_tree_row_reference_get_path(list->summaryViewRowReference);
+ gtk_tree_model_get_iter(GTK_TREE_MODEL(upload_summary),
+ &iter,
+ path);
+ gtk_tree_path_free(path);
+ gtk_tree_store_set(upload_summary,
+ &iter,
+ UPLOAD_URISTRING, us,
+ -1);
FREE(us);
- DEBUG_END();
}
+void fs_upload_error(UploadList * list) {
+ /* FIXME: indicate error in summary dialog! */
+ list->has_terminated = YES;
+}
+void fs_upload_stopped(UploadList * list) {
+ GtkTreeIter iter;
+ GtkTreePath * path;
+ UploadList * prev;
+
+ path = gtk_tree_row_reference_get_path(list->summaryViewRowReference);
+ gtk_tree_model_get_iter(GTK_TREE_MODEL(upload_summary),
+ &iter,
+ path);
+ gtk_tree_path_free(path);
+ gtk_tree_row_reference_free(list->summaryViewRowReference);
+ list->summaryViewRowReference = NULL;
+ gtk_tree_store_remove(upload_summary,
+ &iter);
+ FREE(list->filename);
+ if (list->uri != NULL) {
+ ECRS_freeUri(list->uri);
+ list->uri = NULL;
+ }
+ if (upload_head == list)
+ upload_head = list->next;
+ else {
+ prev = upload_head;
+ while ( (prev != NULL) &&
+ (prev->next != list) )
+ prev = prev->next;
+ if (prev != NULL)
+ prev->next = list->next;
+ else
+ GE_BREAK(ectx, 0);
+ }
+ FREE(list);
+}
+
+UploadList *
+fs_upload_started(struct FSUI_UploadList * fsui,
+ UploadList * parent,
+ const char * filename,
+ struct ECRS_URI * uri,
+ unsigned long long total,
+ unsigned long long completed) {
+ UploadList * ret;
+ GtkTreeIter iter;
+ GtkTreePath * path;
+ int progress;
+
+ ret = MALLOC(sizeof(UploadList));
+ memset(ret,
+ 0,
+ sizeof(UploadList));
+ ret->filename = STRDUP(filename);
+ ret->fsui_list = fsui;
+ ret->total = total;
+ if (parent == NULL) {
+ gtk_tree_store_append(upload_summary,
+ &iter,
+ NULL);
+ } else {
+ GtkTreeIter par;
+
+ path = gtk_tree_row_reference_get_path(parent->summaryViewRowReference);
+ gtk_tree_model_get_iter(GTK_TREE_MODEL(upload_summary),
+ &par,
+ path);
+ gtk_tree_path_free(path);
+ gtk_tree_store_append(upload_summary,
+ &iter,
+ &par);
+ }
+
+ if (total != 0)
+ progress = 100 * completed / total;
+ else
+ progress = 100;
+ gtk_tree_store_set(upload_summary,
+ &iter,
+ UPLOAD_FILENAME, filename,
+ UPLOAD_PROGRESS, progress,
+ UPLOAD_URISTRING, "", /* FIXME: set if URI != NULL! */
+ UPLOAD_INTERNAL, ret,
+ -1);
+ path = gtk_tree_model_get_path(GTK_TREE_MODEL(upload_summary),
+ &iter);
+ ret->summaryViewRowReference
+ = gtk_tree_row_reference_new(GTK_TREE_MODEL(upload_summary),
+ path);
+ ret->next = upload_head;
+ upload_head = ret;
+ return ret;
+}
+
+/* *************** Glade UI event handling ************** */
+
+
void on_selectAlternativePreviewButton_selection_changed_fs(GtkWidget *
preview,
GtkWidget *
fileChooser) {
char * fn;
@@ -239,8 +340,8 @@
"previewImage");
uc.keywordURI = getKeywordURIFromList(metaXML,
"metaDataDialogKeywordList");
- uc.anon = getAnonymityLevel(getMainXML(),
- "uploadAnonymityLevelSpinButton");
+ uc.anon = getSpinButtonValue(getMainXML(),
+ "uploadAnonymityLevelSpinButton");
deepIndex = glade_xml_get_widget(getMainXML(),
"deepIndexCheckButton");
uc.deepIndex = (TRUE ==
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(deepIndex))) ? YES : NO;
@@ -342,63 +443,4 @@
}
}
-
-void fs_upload_start(struct GE_Context * e,
- struct GC_Configuration * c) {
- GtkWidget * uploadList;
- GtkWidget * uploadEntry;
- GtkCellRenderer * renderer;
- GtkListStore * model;
- int col;
-
- ectx = e;
- cfg = c;
- uploadList = glade_xml_get_widget(getMainXML(),
- "activeUploadsList");
- summary =
- gtk_tree_store_new(UPLOAD_NUM,
- G_TYPE_STRING, /* filename */
- G_TYPE_INT, /* progress */
- G_TYPE_STRING); /* URI (as string) - after completion */
- gtk_tree_view_set_model(GTK_TREE_VIEW(uploadList),
- GTK_TREE_MODEL(summary));
-
gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(uploadList)),
- GTK_SELECTION_MULTIPLE);
- renderer = gtk_cell_renderer_progress_new();
- col = gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(uploadList),
- -1,
- _("Filename"),
- renderer,
- "text", UPLOAD_FILENAME,
- "value", UPLOAD_PROGRESS,
- NULL);
-
gtk_tree_view_column_set_resizable(gtk_tree_view_get_column(GTK_TREE_VIEW(uploadList),
- col - 1),
- TRUE);
- renderer = gtk_cell_renderer_text_new();
- col = gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(uploadList),
- -1,
- _("URI"),
- renderer,
- "text", UPLOAD_URISTRING,
- NULL);
-
gtk_tree_view_column_set_resizable(gtk_tree_view_get_column(GTK_TREE_VIEW(uploadList),
- col - 1),
- TRUE);
-
- uploadEntry
- = glade_xml_get_widget(getMainXML(),
- "uploadFilenameComboBoxEntry");
-
- model = gtk_list_store_new(1, G_TYPE_STRING);
- gtk_combo_box_set_model(GTK_COMBO_BOX(uploadEntry),
- GTK_TREE_MODEL(model));
- gtk_combo_box_entry_set_text_column(GTK_COMBO_BOX_ENTRY(uploadEntry),
- 0);
-}
-
-void fs_upload_stop() {
- /* nothing to be done */
-}
-
/* end of upload.c */
Modified: gnunet-gtk/src/plugins/fs/upload.h
===================================================================
--- gnunet-gtk/src/plugins/fs/upload.h 2006-10-29 19:52:26 UTC (rev 3562)
+++ gnunet-gtk/src/plugins/fs/upload.h 2006-10-29 21:57:35 UTC (rev 3563)
@@ -27,36 +27,27 @@
#ifndef GTK_UPLOAD_H
#define GTK_UPLOAD_H
-/**
- */
-void displayUploadUpdate(struct FSUI_UploadList * list,
- const char * filename,
- unsigned long long completed,
- unsigned long long total);
+#include "fs.h"
-/**
- */
-void displayUploadComplete(struct FSUI_UploadList * list,
- const char * filename,
- const struct ECRS_URI * uri);
+void fs_upload_update(UploadList * list,
+ unsigned long long completed);
+void fs_upload_complete(UploadList * list,
+ struct ECRS_URI * uri);
+void fs_upload_error(UploadList * list);
+void fs_upload_stopped(UploadList * list);
+
/**
- * Add the given result to the model (upload result
- * list).
- * @param info the information to add to the model
- * @param uri the upload URI
- * @param path the tree path that selects where to add
- * the information, NULL for top-level
+ * @param uri NULL if upload is not yet finished
*/
-void displayUploadResult(const ECRS_FileInfo * info,
- const struct ECRS_URI * uri,
- GtkTreeRowReference * row);
+UploadList *
+fs_upload_started(struct FSUI_UploadList * fsui,
+ UploadList * parent,
+ const char * filename,
+ struct ECRS_URI * uri,
+ unsigned long long total,
+ unsigned long long completed);
-void fs_upload_start(struct GE_Context * e,
- struct GC_Configuration * c);
-
-void fs_upload_stop(void);
-
#endif
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r3563 - gnunet-gtk/src/plugins/fs,
grothoff <=