2 more patches
Nirgal <contact_mdbtools <at> nirgal.com>
2012-01-16 02:21:54 GMT
Attached are two very old patches that were hanging in Debian distro...
* treeviewmodel slightly improves the typing, so that less casts are necessary.
* filelocals reduce the scope of some local functions declaring them static.
These are small changes that I guess can go in. What do you think of these?
Description: Aestetic type changes
In gmdb2/sql.c there are some incorrect uses of treeviews and models.
Attached patch fixes or improves variable type definitions and adds and
removes some typecasts as needed.
Author: Filip Van Raemdonck <mechanix <at> debian.org>
Forwarded: http://sourceforge.net/tracker/?func=detail&aid=1081706&group_id=2294&atid=302294
Reviewed-by: Jean-Michel Vourgère <jmv_deb <at> nirgal.com>
Last-Update: 2012-01-11
Index: mdbtools/src/gmdb2/sql.c
===================================================================
--- mdbtools.orig/src/gmdb2/sql.c
+++ mdbtools/src/gmdb2/sql.c
@@ -55,6 +55,8 @@
}
}
+gchar* gmdb_export_get_filepath (GladeXML*); /* from table_export.c */
+
/* callbacks */
static void
gmdb_sql_write_rslt_cb(GtkWidget *w, GladeXML *xml)
@@ -74,7 +76,7 @@
GtkWidget *treeview;
GtkTreeViewColumn *col;
GList *glist;
- GtkTreeStore *store;
+ GtkTreeModel *store;
GtkTreeIter iter;
GValue value = { 0, };
@@ -118,17 +120,16 @@
g_list_free(glist);
}
- store = (GtkTreeStore *) gtk_tree_view_get_model(GTK_TREE_VIEW(treeview));
- gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &iter);
+ store = gtk_tree_view_get_model(GTK_TREE_VIEW(treeview));
+ gtk_tree_model_get_iter_first(store, &iter);
rows=0;
g_value_init (&value, G_TYPE_STRING);
do {
rows++;
- n_columns = gtk_tree_model_get_n_columns(GTK_TREE_MODEL(store));
+ n_columns = gtk_tree_model_get_n_columns(store);
for (i=0; i < n_columns; i++) {
if (i>0) fputs(delimiter, outfile);
- gtk_tree_model_get_value(GTK_TREE_MODEL(store),
- &iter, i, &value);
+ gtk_tree_model_get_value(store, &iter, i, &value);
str = (gchar *) g_value_get_string(&value);
gmdb_print_quote(outfile, need_quote, quotechar, delimiter, str);
fputs(str, outfile);
@@ -136,7 +137,7 @@
g_value_unset(&value);
}
fputs(lineterm, outfile);
- } while (gtk_tree_model_iter_next(GTK_TREE_MODEL(store), &iter));
+ } while (gtk_tree_model_iter_next(store, &iter));
fclose(outfile);
gtk_widget_destroy(filesel);
@@ -353,7 +354,8 @@
MdbSQLColumn *sqlcol;
GtkTextBuffer *txtbuffer;
GtkTextIter start, end;
- GtkWidget *textview, *combo, *treeview, *store;
+ GtkWidget *textview, *combo, *treeview;
+ GtkTreeModel *store;
/*GtkWidget *window;*/
GList *history;
GType *gtypes;
@@ -402,17 +404,17 @@
for (i=0;i<sql->num_columns;i++)
gtypes[i]=G_TYPE_STRING;
- store = (GtkWidget *) gtk_tree_view_get_model(GTK_TREE_VIEW(treeview));
+ store = gtk_tree_view_get_model(GTK_TREE_VIEW(treeview));
if (store) {
while ((column = gtk_tree_view_get_column(GTK_TREE_VIEW(treeview), 0))) {
gtk_tree_view_remove_column(GTK_TREE_VIEW(treeview), column);
}
- gtk_widget_destroy(store);
+ g_object_unref(store);
}
- store = (GtkWidget *) gtk_list_store_newv(sql->num_columns, gtypes);
+ store = (GtkTreeModel*)gtk_list_store_newv(sql->num_columns, gtypes);
g_free(gtypes);
- gtk_tree_view_set_model(GTK_TREE_VIEW(treeview), GTK_TREE_MODEL(store));
+ gtk_tree_view_set_model(GTK_TREE_VIEW(treeview), store);
GtkCellRenderer *renderer;
renderer = gtk_cell_renderer_text_new();
Description: Reduce function scopes
This patch removes a few function declarations from the catch-all gmdb.h as
they are defined and used only in a single file, and turns them in to static
(file local) functions instead.
Author: Filip Van Raemdonck <mechanix <at> debian.org>
Forwarded: http://sourceforge.net/tracker/?func=detail&aid=1081716&group_id=2294&atid=302294
Reviewed-by: Jean-Michel Vourgère <jmv_deb <at> nirgal.com>
Last-Update: 2012-01-11
Index: mdbtools/src/gmdb2/gmdb.h
===================================================================
--- mdbtools.orig/src/gmdb2/gmdb.h
+++ mdbtools/src/gmdb2/gmdb.h
@@ -57,10 +57,8 @@
void gmdb_debug_close_all(void);
/* sql.c */
-void gmdb_sql_save_as_cb(GtkWidget *w, GladeXML *xml);
void gmdb_sql_new_cb(GtkWidget *w, gpointer data);
void gmdb_sql_close_all(void);
-void gmdb_sql_save_query(GladeXML *xml, gchar *file_path);
unsigned long gmdb_prefs_get_maxrows(void);
Index: mdbtools/src/gmdb2/sql.c
===================================================================
--- mdbtools.orig/src/gmdb2/sql.c
+++ mdbtools/src/gmdb2/sql.c
@@ -39,8 +39,10 @@
extern MdbHandle *mdb;
extern MdbSQL *sql;
-static void gmdb_sql_tree_populate(MdbHandle *mdb, GladeXML *xml);
-static void gmdb_sql_load_query(GladeXML *xml, gchar *file_path);
+static void gmdb_sql_tree_populate (MdbHandle*, GladeXML*);
+static void gmdb_sql_load_query (GladeXML*, gchar*);
+static void gmdb_sql_save_query (GladeXML*, gchar*);
+static void gmdb_sql_save_as_cb (GtkWidget*, GladeXML*);
void
gmdb_sql_close_all()
@@ -190,7 +192,7 @@
}
gmdb_sql_save_query(xml, str);
}
-void
+static void
gmdb_sql_save_as_cb(GtkWidget *w, GladeXML *xml)
{
GtkWindow *parent_window = (GtkWindow *) glade_xml_get_widget (xml, "gmdb");
@@ -458,8 +460,7 @@
}
void
-gmdb_sql_new_cb(GtkWidget *w, gpointer data)
-{
+gmdb_sql_new_cb (GtkWidget *w, gpointer data) {
GtkTargetEntry src;
GtkWidget *mi, *but, *combo;
GladeXML *sqlwin_xml;
@@ -619,9 +620,9 @@
textview = glade_xml_get_widget(xml, "sql_textview");
g_object_set_data(G_OBJECT(textview), "file_name", file_name);
}
-void
-gmdb_sql_save_query(GladeXML *xml, gchar *file_path)
-{
+
+static void
+gmdb_sql_save_query (GladeXML *xml, gchar *file_path) {
FILE *out;
GtkWidget *textview;
GtkTextBuffer *txtbuffer;
@@ -697,8 +698,7 @@
#else
void
-gmdb_sql_new_cb(GtkWidget *w, gpointer data)
-{
+gmdb_sql_new_cb (GtkWidget *w, gpointer data) {
GtkWidget* dlg = gtk_message_dialog_new (gtk_widget_get_toplevel (w),
GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE,
_("SQL support was not built.\nRun configure with the --enable-sql option."));
------------------------------------------------------------------------------
RSA(R) Conference 2012
Mar 27 - Feb 2
Save $400 by Jan. 27
Register now!
http://p.sf.net/sfu/rsa-sfdev2dev2
_______________________________________________
mdbtools-dev mailing list
mdbtools-dev <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mdbtools-dev