Check for new guppi version using a different method.

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4031 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
Dave Peticolas 2001-04-24 07:27:18 +00:00
parent 163ee4149a
commit 649b29582b

View File

@ -30,6 +30,7 @@
#include <gtkhtml/gtkhtml.h> #include <gtkhtml/gtkhtml.h>
#include <gtkhtml/gtkhtml-embedded.h> #include <gtkhtml/gtkhtml-embedded.h>
#include <libguppi/guppi-version.h>
#include <libguppitank/guppi-tank.h> #include <libguppitank/guppi-tank.h>
#include "gnc-engine-util.h" #include "gnc-engine-util.h"
@ -332,19 +333,18 @@ convert_string_array(char ** strings, int nstrings) {
} }
static gboolean static gboolean
gnc_type_has_arg (GtkType gtype, const char *arg_name) gnc_has_guppi_0_35_4 (void)
{ {
GtkArgInfo *arg_info; if (guppi_version_major () > 0)
char *error; return TRUE;
error = gtk_object_arg_get_info (gtype, arg_name, &arg_info); if (guppi_version_minor () > 35)
if (error) return TRUE;
{
g_free (error); if (guppi_version_minor () < 35)
return FALSE; return FALSE;
}
return TRUE; return (guppi_version_micro () > 3);
} }
/******************************************************************** /********************************************************************
@ -529,7 +529,6 @@ gnc_html_embedded_barchart(gnc_html * parent,
GuppiObject * barchart = NULL; GuppiObject * barchart = NULL;
GuppiObject * title = NULL; GuppiObject * title = NULL;
GtkArg arglist[21]; GtkArg arglist[21];
GtkType bar_type;
int argind=0; int argind=0;
char * param; char * param;
int datarows=0; int datarows=0;
@ -702,15 +701,7 @@ gnc_html_embedded_barchart(gnc_html * parent,
datarows*datacols); datarows*datacols);
g_free(callbacks); g_free(callbacks);
} }
if(gnc_has_guppi_0_35_4 () &&
barchart = guppi_object_newv("barchart", w, h,
argind, arglist);
bar_type = GTK_OBJECT_TYPE (barchart);
argind = 0;
if(gnc_type_has_arg (bar_type, "legend_reversed") &&
(param = g_hash_table_lookup(params, "legend_reversed")) != NULL) { (param = g_hash_table_lookup(params, "legend_reversed")) != NULL) {
sscanf(param, "%d", &rotate); sscanf(param, "%d", &rotate);
arglist[argind].name = "legend_reversed"; arglist[argind].name = "legend_reversed";
@ -718,7 +709,7 @@ gnc_html_embedded_barchart(gnc_html * parent,
GTK_VALUE_BOOL(arglist[argind]) = rotate; GTK_VALUE_BOOL(arglist[argind]) = rotate;
argind++; argind++;
} }
if(gnc_type_has_arg (bar_type, "stacked") && if(gnc_has_guppi_0_35_4 () &&
(param = g_hash_table_lookup(params, "stacked")) != NULL) { (param = g_hash_table_lookup(params, "stacked")) != NULL) {
sscanf(param, "%d", &stacked); sscanf(param, "%d", &stacked);
arglist[argind].name = "stacked"; arglist[argind].name = "stacked";
@ -726,7 +717,7 @@ gnc_html_embedded_barchart(gnc_html * parent,
GTK_VALUE_BOOL(arglist[argind]) = stacked; GTK_VALUE_BOOL(arglist[argind]) = stacked;
argind++; argind++;
} }
if(gnc_type_has_arg (bar_type, "normalize_stacks") && if(gnc_has_guppi_0_35_4 () &&
(param = g_hash_table_lookup(params, "normalize_stacks")) != NULL) { (param = g_hash_table_lookup(params, "normalize_stacks")) != NULL) {
sscanf(param, "%d", &normalize_stacks); sscanf(param, "%d", &normalize_stacks);
arglist[argind].name = "normalize_stacks"; arglist[argind].name = "normalize_stacks";
@ -735,11 +726,8 @@ gnc_html_embedded_barchart(gnc_html * parent,
argind++; argind++;
} }
if (barchart && argind > 0) barchart = guppi_object_newv("barchart", w, h,
{ argind, arglist);
gtk_object_setv (GTK_OBJECT (barchart), argind, arglist);
guppi_object_update (barchart);
}
if(barchart) { if(barchart) {
if((gtitle = g_hash_table_lookup(params, "title")) != NULL) { if((gtitle = g_hash_table_lookup(params, "title")) != NULL) {