Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

fileinfo.c File Reference


Detailed Description

Displaying of file information in the GUI.

Author:
Richard Eckart
Date:
2003

#include "gtk/gui.h"
#include "gtk/filter.h"
#include "gtk/visual_progress.h"
#include "gtk/columns.h"
#include "gtk/gtk-missing.h"
#include "gtk/misc.h"
#include "if/gui_property.h"
#include "if/gui_property_priv.h"
#include "if/bridge/ui2c.h"
#include "lib/utf8.h"
#include "lib/url.h"
#include "lib/glib-missing.h"
#include "lib/override.h"

Functions

 RCSID ("$Id:fileinfo.c, v 1.43 2005/12/19 11:18:22 cbiere Exp $")
void fi_gui_fi_removed (gnet_fi_t fih)
void fi_gui_update_row (GtkListStore *store, GtkTreeIter *iter, gchar **titles)
void fi_gui_set_details (gnet_fi_t fih)
void fi_gui_clear_details (void)
void on_treeview_fileinfo_cursor_changed (GtkTreeView *tv, gpointer unused_udata)
void fi_purge_helper (GtkTreeModel *model, GtkTreePath *unused_path, GtkTreeIter *iter, gpointer data)
void on_button_fi_purge_clicked (GtkButton *unused_button, gpointer unused_udata)
 Handle the clicking of the purge button.

void fi_gui_append_row (GtkListStore *store, gnet_fi_t fih, gchar **titles)
void fi_gui_fill_info (gnet_fi_t fih, gchar *titles[c_fi_num])
 Fill in the cell data.

void fi_gui_fill_status (gnet_fi_t fih, gchar *titles[c_fi_num])
void fi_gui_update (gnet_fi_t fih, gboolean full)
void fi_gui_fi_added (gnet_fi_t fih)
void fi_gui_fi_status_changed (gnet_fi_t fih)
void fi_gui_fi_status_changed_transient (gnet_fi_t fih)
gboolean fi_gui_update_queued (gpointer key, gpointer unused_value, gpointer unused_udata)
gint compare_uint_func (GtkTreeModel *model, GtkTreeIter *i, GtkTreeIter *j, gpointer user_data)
gint compare_uint64_func (GtkTreeModel *model, GtkTreeIter *i, GtkTreeIter *j, gpointer user_data)
void add_column (GtkTreeView *tree, gint column_id, const gchar *title, gfloat xalign)
void drag_begin (GtkWidget *widget, GdkDragContext *unused_drag_ctx, gpointer udata)
void drag_data_get (GtkWidget *widget, GdkDragContext *unused_drag_ctx, GtkSelectionData *data, guint unused_info, guint unused_stamp, gpointer udata)
void drag_end (GtkWidget *widget, GdkDragContext *unused_drag_ctx, gpointer udata)
void fi_gui_update_display (time_t unused_now)
void fi_gui_init (void)
void fi_gui_shutdown (void)

Variables

gnet_fi_t last_shown = 0
gboolean last_shown_valid = FALSE
GtkTreeView * treeview_fileinfo = NULL
GtkTreeView * treeview_fi_aliases = NULL
GtkEntry * entry_fi_filename = NULL
GtkLabel * label_fi_sha1 = NULL
GtkLabel * label_fi_size = NULL
GtkListStore * store_fileinfo = NULL
GtkListStore * store_aliases = NULL
GHashTable * fi_gui_handles = NULL
GHashTable * fi_updates = NULL


Function Documentation

void add_column GtkTreeView *  tree,
gint  column_id,
const gchar *  title,
gfloat  xalign
[static]
 

gint compare_uint64_func GtkTreeModel *  model,
GtkTreeIter *  i,
GtkTreeIter *  j,
gpointer  user_data
[static]
 

gint compare_uint_func GtkTreeModel *  model,
GtkTreeIter *  i,
GtkTreeIter *  j,
gpointer  user_data
[static]
 

void drag_begin GtkWidget *  widget,
GdkDragContext *  unused_drag_ctx,
gpointer  udata
[static]
 

void drag_data_get GtkWidget *  widget,
GdkDragContext *  unused_drag_ctx,
GtkSelectionData *  data,
guint  unused_info,
guint  unused_stamp,
gpointer  udata
[static]
 

void drag_end GtkWidget *  widget,
GdkDragContext *  unused_drag_ctx,
gpointer  udata
[static]
 

void fi_gui_append_row GtkListStore *  store,
gnet_fi_t  fih,
gchar **  titles
[static]
 

void fi_gui_clear_details void   )  [static]
 

void fi_gui_fi_added gnet_fi_t  fih  )  [static]
 

void fi_gui_fi_removed gnet_fi_t  fih  )  [static]
 

void fi_gui_fi_status_changed gnet_fi_t  fih  )  [static]
 

void fi_gui_fi_status_changed_transient gnet_fi_t  fih  )  [static]
 

void fi_gui_fill_info gnet_fi_t  fih,
gchar *  titles[c_fi_num]
[static]
 

Fill in the cell data.

Calling this will always break the data it filled in last time!

void fi_gui_fill_status gnet_fi_t  fih,
gchar *  titles[c_fi_num]
[static]
 

void fi_gui_init void   ) 
 

void fi_gui_set_details gnet_fi_t  fih  )  [static]
 

void fi_gui_shutdown void   ) 
 

void fi_gui_update gnet_fi_t  fih,
gboolean  full
[static]
 

void fi_gui_update_display time_t  unused_now  ) 
 

Bug:
FIXME: We should remember for every node when it was last updated and only refresh every node at most once every second. This information should be kept in a struct pointed to by the row user_data and should be automatically freed when removing the row (see upload stats code).

gboolean fi_gui_update_queued gpointer  key,
gpointer  unused_value,
gpointer  unused_udata
[static]
 

void fi_gui_update_row GtkListStore *  store,
GtkTreeIter *  iter,
gchar **  titles
[static]
 

void fi_purge_helper GtkTreeModel *  model,
GtkTreePath *  unused_path,
GtkTreeIter *  iter,
gpointer  data
[static]
 

void on_button_fi_purge_clicked GtkButton *  unused_button,
gpointer  unused_udata
 

Handle the clicking of the purge button.

Purge the selected file.

void on_treeview_fileinfo_cursor_changed GtkTreeView *  tv,
gpointer  unused_udata
 

RCSID "$Id:fileinfo.  c,
v 1.43 2005/12/19 11:18:22 cbiere Exp $" 
 


Variable Documentation

GtkEntry* entry_fi_filename = NULL [static]
 

GHashTable* fi_gui_handles = NULL [static]
 

GHashTable* fi_updates = NULL [static]
 

GtkLabel* label_fi_sha1 = NULL [static]
 

GtkLabel* label_fi_size = NULL [static]
 

gnet_fi_t last_shown = 0 [static]
 

gboolean last_shown_valid = FALSE [static]
 

GtkListStore* store_aliases = NULL [static]
 

GtkListStore* store_fileinfo = NULL [static]
 

GtkTreeView* treeview_fi_aliases = NULL [static]
 

GtkTreeView* treeview_fileinfo = NULL [static]
 


Generated on Sun Feb 12 10:50:01 2006 for Gtk-Gnutella by doxygen 1.3.6